[INFO] cloning repository https://github.com/alfredjeanlab/coop
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/alfredjeanlab/coop" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falfredjeanlab%2Fcoop", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falfredjeanlab%2Fcoop'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] aa8ad431ec8b08527c31858e7509224602132bde
[INFO] fixing alfredjeanlab/coop against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falfredjeanlab%2Fcoop" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/alfredjeanlab/coop
[INFO] finished tweaking git repo https://github.com/alfredjeanlab/coop
[INFO] tweaked toml for git repo https://github.com/alfredjeanlab/coop written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/alfredjeanlab/coop on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/alfredjeanlab/coop already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 775a8771d4dbd4a3a731feb0ed0e426d77b049a55dae08251630b3014e1a13d6
[INFO] running `Command { std: "docker" "start" "775a8771d4dbd4a3a731feb0ed0e426d77b049a55dae08251630b3014e1a13d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "775a8771d4dbd4a3a731feb0ed0e426d77b049a55dae08251630b3014e1a13d6" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "775a8771d4dbd4a3a731feb0ed0e426d77b049a55dae08251630b3014e1a13d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "775a8771d4dbd4a3a731feb0ed0e426d77b049a55dae08251630b3014e1a13d6" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating crates/cli/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/mux/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/specs/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling anyhow v1.0.101
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling aws-lc-rs v1.15.4
[INFO] [stderr]    Compiling zmij v1.0.20
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]     Checking data-encoding v2.10.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking anstyle-parse v0.2.7
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.2
[INFO] [stderr]     Checking anstyle-query v1.1.5
[INFO] [stderr]     Checking colorchoice v1.0.4
[INFO] [stderr]     Checking anstyle v1.0.13
[INFO] [stderr]     Checking openssl-probe v0.2.1
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]     Checking clap_lex v0.7.7
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]     Checking base64ct v1.8.3
[INFO] [stderr]    Compiling pulldown-cmark v0.13.0
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking rustls-native-certs v0.8.3
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]     Checking pem-rfc7468 v0.7.0
[INFO] [stderr]    Compiling regex-syntax v0.8.9
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]     Checking clap_builder v4.5.57
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling cc v1.2.55
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]    Compiling multimap v0.10.1
[INFO] [stderr]    Compiling typeid v1.0.3
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking webpki-roots v1.0.6
[INFO] [stderr]    Compiling erased-serde v0.4.9
[INFO] [stderr]    Compiling nix v0.31.1
[INFO] [stderr]     Checking webpki-roots v0.26.11
[INFO] [stderr]    Compiling petgraph v0.8.3
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking rustls-pemfile v2.2.0
[INFO] [stderr]    Compiling typetag v0.2.21
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking uuid v1.20.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking deranged v0.5.5
[INFO] [stderr]    Compiling pulldown-cmark-to-cmark v22.0.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]     Checking rgb v0.8.52
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking signatory v0.27.1
[INFO] [stderr]     Checking inotify v0.11.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]     Checking rustls-native-certs v0.7.3
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]    Compiling aws-lc-sys v0.37.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling tempfile v3.25.0
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking nuid v0.5.0
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking rustls-webpki v0.102.8
[INFO] [stderr]     Checking notify-types v2.1.0
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]     Checking inventory v0.3.21
[INFO] [stderr]     Checking avt v0.17.0
[INFO] [stderr]     Checking num v0.4.3
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking chrono v0.4.43
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]     Checking yansi v1.0.1
[INFO] [stderr]     Checking notify v8.2.0
[INFO] [stderr]     Checking diff v0.1.13
[INFO] [stderr]     Checking bytesize v2.3.1
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking sdd v3.0.10
[INFO] [stderr]     Checking rand_xorshift v0.4.0
[INFO] [stderr]     Checking pretty_assertions v1.4.1
[INFO] [stderr]     Checking scc v2.4.0
[INFO] [stderr]     Checking rusty-fork v0.3.1
[INFO] [stderr]    Compiling tonic-build v0.14.3
[INFO] [stderr]     Checking proptest v1.10.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling prost-derive v0.14.3
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling typetag-impl v0.2.21
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling expect-json-macros v1.9.0
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking reserve-port v2.3.0
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]    Compiling serial_test_derive v3.3.1
[INFO] [stderr]    Compiling yare-macro v3.0.0
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]    Compiling prost v0.14.3
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking yare v3.0.0
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking clap v4.5.57
[INFO] [stderr]     Checking nkeys v0.4.5
[INFO] [stderr]    Compiling prost-types v0.14.3
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking tracing-serde v0.2.0
[INFO] [stderr]     Checking serde_nanos v0.1.4
[INFO] [stderr]     Checking email_address v0.2.9
[INFO] [stderr]     Checking tracing-subscriber v0.3.22
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking expect-json v1.9.0
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking serial_test v3.3.1
[INFO] [stderr]    Compiling prost-build v0.14.3
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking tungstenite v0.28.0
[INFO] [stderr]     Checking rust-multipart-rfc7578_2 v0.8.0
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]    Compiling tonic-prost-build v0.14.3
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]    Compiling coop v1.0.0 (/opt/rustwide/workdir/crates/cli)
[INFO] [stderr]    Migrating crates/cli/build.rs from 2021 edition to 2024
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tokio-tungstenite v0.28.0
[INFO] [stderr]     Checking tryhard v0.5.2
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking rustls-webpki v0.103.9
[INFO] [stderr]     Checking axum v0.8.8
[INFO] [stderr]     Checking hyper-timeout v0.5.2
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking rustls-platform-verifier v0.6.2
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking tokio-websockets v0.10.1
[INFO] [stderr]     Checking reqwest v0.13.2
[INFO] [stderr]     Checking async-nats v0.46.0
[INFO] [stderr]     Checking tonic v0.14.3
[INFO] [stderr]     Checking axum-test v18.7.0
[INFO] [stderr]     Checking coopmux v1.0.0 (/opt/rustwide/workdir/crates/mux)
[INFO] [stderr]    Migrating crates/mux/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking tonic-prost v0.14.3
[INFO] [stderr]        Fixed crates/mux/src/credential/broker.rs (1 fix)
[INFO] [stderr]        Fixed crates/mux/src/transport/http.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/mux/src/credential/refresh.rs:49:15
[INFO] [stdout]      |
[INFO] [stdout]   49 |         match do_refresh(client, token_url, client_id, refresh_token).await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                                                       |
[INFO] [stdout]      |               |                                                       this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |               |                                                       up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               |                                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               |                                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               `__awaitee` calls a custom destructor
[INFO] [stdout]      |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]   50 |             Ok(token) => return Ok(token),
[INFO] [stdout]   51 |             Err(e) => {
[INFO] [stdout]      |                 -
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `e` calls a custom destructor
[INFO] [stdout]      |                 `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   56 |                 tokio::time::sleep(backoff).await;
[INFO] [stdout]      |                 ---------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   60 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:240:27
[INFO] [stdout]     |
[INFO] [stdout] 233 |                     let client = UpstreamClient::new(session_url.clone(), session_token.clone());
[INFO] [stdout]     |                         ------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `client` calls a custom destructor
[INFO] [stdout]     |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 240 |                     match client.post_json("/api/v1/session/profiles", &profile_body).await
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                           |                                                           |
[INFO] [stdout]     |                           |                                                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                           |                                                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 246 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:256:37
[INFO] [stdout]     |
[INFO] [stdout] 251 |                     let client = UpstreamClient::new(session_url.clone(), session_token.clone());
[INFO] [stdout]     |                         ------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `client` calls a custom destructor
[INFO] [stdout]     |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 256 |                     if let Err(e) = client.post_json("/api/v1/session/switch", &switch_body).await {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                                     |                                                        |
[INFO] [stdout]     |                                     |                                                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                     |                                                        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 259 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:256:94
[INFO] [stdout]     |
[INFO] [stdout] 251 |                     let client = UpstreamClient::new(session_url.clone(), session_token.clone());
[INFO] [stdout]     |                         ------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `client` calls a custom destructor
[INFO] [stdout]     |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 256 |                     if let Err(e) = client.post_json("/api/v1/session/switch", &switch_body).await {
[INFO] [stdout]     |                                                                                              ^^^^^
[INFO] [stdout]     |                                                                                              |
[INFO] [stdout]     |                                                                                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                              up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 259 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:240:87
[INFO] [stdout]     |
[INFO] [stdout] 233 |                     let client = UpstreamClient::new(session_url.clone(), session_token.clone());
[INFO] [stdout]     |                         ------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `client` calls a custom destructor
[INFO] [stdout]     |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 240 |                     match client.post_json("/api/v1/session/profiles", &profile_body).await
[INFO] [stdout]     |                                                                                       ^^^^^
[INFO] [stdout]     |                                                                                       |
[INFO] [stdout]     |                                                                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 246 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:172:36
[INFO] [stdout]     |
[INFO] [stdout] 172 |                 if let Some(old) = sessions.remove(stale_id) {
[INFO] [stdout]     |                             ---    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                             |      |
[INFO] [stdout]     |                             |      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             |      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             `old` calls a custom destructor
[INFO] [stdout]     |                             `old` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 185 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> crates/mux/src/upstream/bridge.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for WsBridge {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `old` invokes this custom destructor
[INFO] [stdout]    --> crates/mux/src/upstream/bridge.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for WsBridge {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `old` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:195:35
[INFO] [stdout]     |
[INFO] [stdout] 195 |                 if let Some(ws) = watchers.remove(stale_id) {
[INFO] [stdout]     |                             --    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                             |     |
[INFO] [stdout]     |                             |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             `ws` calls a custom destructor
[INFO] [stdout]     |                             `ws` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 199 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ws` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:361:11
[INFO] [stdout]     |
[INFO] [stdout] 352 |     let entry = match sessions.get(&id) {
[INFO] [stdout]     |         -----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `entry` calls a custom destructor
[INFO] [stdout]     |         `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 360 |     let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `client` calls a custom destructor
[INFO] [stdout]     |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] 361 |     match client.get_agent().await {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |           |                  |
[INFO] [stdout]     |           |                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |           |                  up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 367 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> crates/mux/src/upstream/bridge.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for WsBridge {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:361:30
[INFO] [stdout]     |
[INFO] [stdout] 352 |     let entry = match sessions.get(&id) {
[INFO] [stdout]     |         -----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `entry` calls a custom destructor
[INFO] [stdout]     |         `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 360 |     let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `client` calls a custom destructor
[INFO] [stdout]     |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] 361 |     match client.get_agent().await {
[INFO] [stdout]     |                              ^^^^^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                              up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 367 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> crates/mux/src/upstream/bridge.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for WsBridge {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/mux/src/transport/http.rs:476:11
[INFO] [stdout]      |
[INFO] [stdout]  438 |     let mut cmd = tokio::process::Command::new("sh");
[INFO] [stdout]      |         -------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `cmd` calls a custom destructor
[INFO] [stdout]      |         `cmd` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  476 |     match cmd.spawn() {
[INFO] [stdout]      |           ^^^^^^^^^^^
[INFO] [stdout]      |           |
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  483 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/process/mod.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl<T: Kill> Drop for ChildDropGuard<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `cmd` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/os/fd/owned.rs:196:0
[INFO] [stdout]      = note: `cmd` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `cmd` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/process/unix/common/cstring_array.rs:79:0
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:502:11
[INFO] [stdout]     |
[INFO] [stdout] 493 |     let entry = match sessions.get(session_id) {
[INFO] [stdout]     |         -----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `entry` calls a custom destructor
[INFO] [stdout]     |         `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 501 |     let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `client` calls a custom destructor
[INFO] [stdout]     |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] 502 |     match client.post_json(path, &body).await {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |           |                             |
[INFO] [stdout]     |           |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |           |                             up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 508 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> crates/mux/src/upstream/bridge.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for WsBridge {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:502:41
[INFO] [stdout]     |
[INFO] [stdout] 493 |     let entry = match sessions.get(session_id) {
[INFO] [stdout]     |         -----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `entry` calls a custom destructor
[INFO] [stdout]     |         `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 501 |     let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `client` calls a custom destructor
[INFO] [stdout]     |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] 502 |     match client.post_json(path, &body).await {
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 508 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> crates/mux/src/upstream/bridge.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for WsBridge {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/ws_mux.rs:210:47
[INFO] [stdout]     |
[INFO] [stdout] 175 | /         tokio::select! {
[INFO] [stdout] 176 | |             // Mux events (state transitions, online/offline).
[INFO] [stdout] 177 | |             event = event_rx.recv() => {
[INFO] [stdout] 178 | |                 let event = match event {
[INFO] [stdout] ...   |
[INFO] [stdout] 195 | |                     if send_json(&mut ws_tx, &msg).await.is_err() {
[INFO] [stdout]     | |                        ---------------------------------
[INFO] [stdout]     | |                        |
[INFO] [stdout]     | |                        `__awaitee` calls a custom destructor
[INFO] [stdout]     | |                        `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 206 | |                 let sessions = state.sessions.read().await;
[INFO] [stdout]     | |                     --------   ---------------------------
[INFO] [stdout]     | |                     |          |                     |
[INFO] [stdout]     | |                     |          |                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     | |                     |          |                     `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                     |          this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     | |                     |          `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                     `sessions` calls a custom destructor
[INFO] [stdout]     | |                     `sessions` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 210 | |                         if let Some(screen) = entry.cached_screen.read().await.as_ref() {
[INFO] [stdout]     | |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     | |                                               |                          |
[INFO] [stdout]     | |                                               |                          this value will be stored in a temporary; let us call it `#19`
[INFO] [stdout]     | |                                               |                          up until Edition 2021 `#19` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                                               |                          this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     | |                                               |                          `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                               this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]     | |                                               up until Edition 2021 `#18` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     | |                                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 220 | |                     }
[INFO] [stdout]     | |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...   |
[INFO] [stdout] 224 | |                     if send_json(&mut ws_tx, &msg).await.is_err() {
[INFO] [stdout]     | |                        ---------------------------------
[INFO] [stdout]     | |                        |
[INFO] [stdout]     | |                        this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     | |                        `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 231 | |             msg = ws_rx.next() => {
[INFO] [stdout]     | |             ---
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |             `msg` calls a custom destructor
[INFO] [stdout]     | |             `msg` will be dropped later as of Edition 2024
[INFO] [stdout] 232 | |                 let msg = match msg {
[INFO] [stdout]     | |                     ---
[INFO] [stdout]     | |                     |
[INFO] [stdout]     | |                     this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     | |                     `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 237 | |                     Message::Text(text) => {
[INFO] [stdout]     | |                                   ----
[INFO] [stdout]     | |                                   |
[INFO] [stdout]     | |                                   `text` calls a custom destructor
[INFO] [stdout]     | |                                   `text` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 244 | |                                             start_watching(&state, &sid).await;
[INFO] [stdout]     | |                                             ----------------------------------
[INFO] [stdout]     | |                                             |
[INFO] [stdout]     | |                                             this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     | |                                             `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 251 | |                                         let sessions_lock = state.sessions.read().await;
[INFO] [stdout]     | |                                                             ---------------------------
[INFO] [stdout]     | |                                                             |                     |
[INFO] [stdout]     | |                                                             |                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     | |                                                             |                     `#10` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                             this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     | |                                                             `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 255 | |                                                 if let Some(screen) = entry.cached_screen.read().await.as_ref() {
[INFO] [stdout]     | |                                                                       --------------------------------
[INFO] [stdout]     | |                                                                       |                          |
[INFO] [stdout]     | |                                                                       |                          this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]     | |                                                                       |                          `#12` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                                       this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]     | |                                                                       `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 270 | |                                             if send_json(&mut ws_tx, &msg).await.is_err() {
[INFO] [stdout]     | |                                                ---------------------------------
[INFO] [stdout]     | |                                                |
[INFO] [stdout]     | |                                                this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]     | |                                                `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 279 | |                                             stop_watching(&state, &sid).await;
[INFO] [stdout]     | |                                             ---------------------------------
[INFO] [stdout]     | |                                             |
[INFO] [stdout]     | |                                             this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]     | |                                             `#14` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 284 | |                                     proxy_input(&state, &session, &text, enter).await;
[INFO] [stdout]     | |                                     -------------------------------------------------
[INFO] [stdout]     | |                                     |
[INFO] [stdout]     | |                                     this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]     | |                                     `#15` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 287 | |                                     proxy_resize(&state, &session, cols, rows).await;
[INFO] [stdout]     | |                                     ------------------------------------------------
[INFO] [stdout]     | |                                     |
[INFO] [stdout]     | |                                     this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]     | |                                     `#16` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 292 | |                             if send_json(&mut ws_tx, &err).await.is_err() {
[INFO] [stdout]     | |                                ---------------------------------
[INFO] [stdout]     | |                                |
[INFO] [stdout]     | |                                this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]     | |                                `#17` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 301 | |         }
[INFO] [stdout]     | |         -
[INFO] [stdout]     | |         |
[INFO] [stdout]     | |         `output` calls a custom destructor
[INFO] [stdout]     | |         `output` will be dropped later as of Edition 2024
[INFO] [stdout]     | |         `futures_init` calls a custom destructor
[INFO] [stdout]     | |         `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]     | |         `futures` calls a custom destructor
[INFO] [stdout]     | |         `futures` will be dropped later as of Edition 2024
[INFO] [stdout]     | |_________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `output` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `sessions` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/ws_mux.rs:255:71
[INFO] [stdout]     |
[INFO] [stdout] 175 | /         tokio::select! {
[INFO] [stdout] 176 | |             // Mux events (state transitions, online/offline).
[INFO] [stdout] 177 | |             event = event_rx.recv() => {
[INFO] [stdout] 178 | |                 let event = match event {
[INFO] [stdout] ...   |
[INFO] [stdout] 195 | |                     if send_json(&mut ws_tx, &msg).await.is_err() {
[INFO] [stdout]     | |                        ---------------------------------
[INFO] [stdout]     | |                        |
[INFO] [stdout]     | |                        `__awaitee` calls a custom destructor
[INFO] [stdout]     | |                        `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 206 | |                 let sessions = state.sessions.read().await;
[INFO] [stdout]     | |                     --------   ---------------------------
[INFO] [stdout]     | |                     |          |                     |
[INFO] [stdout]     | |                     |          |                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     | |                     |          |                     `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                     |          this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     | |                     |          `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                     `sessions` calls a custom destructor
[INFO] [stdout]     | |                     `sessions` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 210 | |                         if let Some(screen) = entry.cached_screen.read().await.as_ref() {
[INFO] [stdout]     | |                                               --------------------------------
[INFO] [stdout]     | |                                               |                          |
[INFO] [stdout]     | |                                               |                          this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     | |                                               |                          `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     | |                                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 224 | |                     if send_json(&mut ws_tx, &msg).await.is_err() {
[INFO] [stdout]     | |                        ---------------------------------
[INFO] [stdout]     | |                        |
[INFO] [stdout]     | |                        this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     | |                        `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 231 | |             msg = ws_rx.next() => {
[INFO] [stdout]     | |             ---
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |             `msg` calls a custom destructor
[INFO] [stdout]     | |             `msg` will be dropped later as of Edition 2024
[INFO] [stdout] 232 | |                 let msg = match msg {
[INFO] [stdout]     | |                     ---
[INFO] [stdout]     | |                     |
[INFO] [stdout]     | |                     this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     | |                     `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 237 | |                     Message::Text(text) => {
[INFO] [stdout]     | |                                   ----
[INFO] [stdout]     | |                                   |
[INFO] [stdout]     | |                                   `text` calls a custom destructor
[INFO] [stdout]     | |                                   `text` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 244 | |                                             start_watching(&state, &sid).await;
[INFO] [stdout]     | |                                             ----------------------------------
[INFO] [stdout]     | |                                             |
[INFO] [stdout]     | |                                             this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     | |                                             `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 251 | |                                         let sessions_lock = state.sessions.read().await;
[INFO] [stdout]     | |                                                             ---------------------------
[INFO] [stdout]     | |                                                             |                     |
[INFO] [stdout]     | |                                                             |                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     | |                                                             |                     `#10` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                             this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     | |                                                             `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 255 | |                                                 if let Some(screen) = entry.cached_screen.read().await.as_ref() {
[INFO] [stdout]     | |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     | |                                                                       |                          |
[INFO] [stdout]     | |                                                                       |                          this value will be stored in a temporary; let us call it `#19`
[INFO] [stdout]     | |                                                                       |                          up until Edition 2021 `#19` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                                                                       |                          this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]     | |                                                                       |                          `#12` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                                       this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]     | |                                                                       up until Edition 2021 `#18` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                                                                       this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]     | |                                                                       `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 265 | |                                             }
[INFO] [stdout]     | |                                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...   |
[INFO] [stdout] 270 | |                                             if send_json(&mut ws_tx, &msg).await.is_err() {
[INFO] [stdout]     | |                                                ---------------------------------
[INFO] [stdout]     | |                                                |
[INFO] [stdout]     | |                                                this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]     | |                                                `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 279 | |                                             stop_watching(&state, &sid).await;
[INFO] [stdout]     | |                                             ---------------------------------
[INFO] [stdout]     | |                                             |
[INFO] [stdout]     | |                                             this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]     | |                                             `#14` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 284 | |                                     proxy_input(&state, &session, &text, enter).await;
[INFO] [stdout]     | |                                     -------------------------------------------------
[INFO] [stdout]     | |                                     |
[INFO] [stdout]     | |                                     this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]     | |                                     `#15` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 287 | |                                     proxy_resize(&state, &session, cols, rows).await;
[INFO] [stdout]     | |                                     ------------------------------------------------
[INFO] [stdout]     | |                                     |
[INFO] [stdout]     | |                                     this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]     | |                                     `#16` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 292 | |                             if send_json(&mut ws_tx, &err).await.is_err() {
[INFO] [stdout]     | |                                ---------------------------------
[INFO] [stdout]     | |                                |
[INFO] [stdout]     | |                                this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]     | |                                `#17` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 301 | |         }
[INFO] [stdout]     | |         -
[INFO] [stdout]     | |         |
[INFO] [stdout]     | |         `output` calls a custom destructor
[INFO] [stdout]     | |         `output` will be dropped later as of Edition 2024
[INFO] [stdout]     | |         `futures_init` calls a custom destructor
[INFO] [stdout]     | |         `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]     | |         `futures` calls a custom destructor
[INFO] [stdout]     | |         `futures` will be dropped later as of Edition 2024
[INFO] [stdout]     | |_________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `output` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `sessions` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/upstream/health.rs:40:23
[INFO] [stdout]     |
[INFO] [stdout]  39 |                 let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |                     ------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `client` calls a custom destructor
[INFO] [stdout]     |                     `client` will be dropped later as of Edition 2024
[INFO] [stdout]  40 |                 match client.health().await {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                       |               |
[INFO] [stdout]     |                       |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                       |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  68 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/upstream/health.rs:40:39
[INFO] [stdout]     |
[INFO] [stdout]  39 |                 let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |                     ------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `client` calls a custom destructor
[INFO] [stdout]     |                     `client` will be dropped later as of Edition 2024
[INFO] [stdout]  40 |                 match client.health().await {
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  68 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/mux/src/upstream/poller.rs:41:23
[INFO] [stdout]      |
[INFO] [stdout]   36 | /                 tokio::select! {
[INFO] [stdout]   37 | |                     _ = cancel.cancelled() => break,
[INFO] [stdout]   38 | |                     _ = interval.tick() => {}
[INFO] [stdout]   39 | |                 }
[INFO] [stdout]      | |                 -
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |                 `futures_init` calls a custom destructor
[INFO] [stdout]      | |                 `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_________________`futures` calls a custom destructor
[INFO] [stdout]      |                   `futures` will be dropped later as of Edition 2024
[INFO] [stdout]   40 |
[INFO] [stdout]   41 |                   match client.get_screen().await {
[INFO] [stdout]      |                         ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                         |                   |
[INFO] [stdout]      |                         |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                         |                   up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                         up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   63 |                           *entry.cached_screen.write().await = Some(screen);
[INFO] [stdout]      |                            ---------------------------------
[INFO] [stdout]      |                            |                           |
[INFO] [stdout]      |                            |                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            |                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout]   64 |                       }
[INFO] [stdout]   65 |                       Err(e) => {
[INFO] [stdout]      |                           -
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `e` calls a custom destructor
[INFO] [stdout]      |                           `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   69 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/mux/src/upstream/poller.rs:87:23
[INFO] [stdout]      |
[INFO] [stdout]   82 | /                 tokio::select! {
[INFO] [stdout]   83 | |                     _ = cancel.cancelled() => break,
[INFO] [stdout]   84 | |                     _ = interval.tick() => {}
[INFO] [stdout]   85 | |                 }
[INFO] [stdout]      | |                 -
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |                 `futures_init` calls a custom destructor
[INFO] [stdout]      | |                 `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_________________`futures` calls a custom destructor
[INFO] [stdout]      |                   `futures` will be dropped later as of Edition 2024
[INFO] [stdout]   86 |
[INFO] [stdout]   87 |                   match client.get_status().await {
[INFO] [stdout]      |                         ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                         |                   |
[INFO] [stdout]      |                         |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                         |                   up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                         up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  127 |                           *entry.cached_status.write().await = Some(status);
[INFO] [stdout]      |                            ---------------------------------
[INFO] [stdout]      |                            |                           |
[INFO] [stdout]      |                            |                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            |                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  128 |                       }
[INFO] [stdout]  129 |                       Err(e) => {
[INFO] [stdout]      |                           -
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `e` calls a custom destructor
[INFO] [stdout]      |                           `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  133 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/upstream/prewarm.rs:124:36
[INFO] [stdout]     |
[INFO] [stdout]  96 |                 let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |                     ------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `client` calls a custom destructor
[INFO] [stdout]     |                     `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 124 |                 if let Ok(value) = client.get_status().await {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                                    |                   |
[INFO] [stdout]     |                                    |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                    |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 154 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/upstream/prewarm.rs:124:56
[INFO] [stdout]     |
[INFO] [stdout]  96 |                 let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |                     ------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `client` calls a custom destructor
[INFO] [stdout]     |                     `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 124 |                 if let Ok(value) = client.get_status().await {
[INFO] [stdout]     |                                                        ^^^^^
[INFO] [stdout]     |                                                        |
[INFO] [stdout]     |                                                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 154 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/mux/src/credential/refresh.rs:49:15
[INFO] [stdout]      |
[INFO] [stdout]   49 |         match do_refresh(client, token_url, client_id, refresh_token).await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                                                       |
[INFO] [stdout]      |               |                                                       this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |               |                                                       up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               |                                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               |                                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               `__awaitee` calls a custom destructor
[INFO] [stdout]      |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]   50 |             Ok(token) => return Ok(token),
[INFO] [stdout]   51 |             Err(e) => {
[INFO] [stdout]      |                 -
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `e` calls a custom destructor
[INFO] [stdout]      |                 `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   56 |                 tokio::time::sleep(backoff).await;
[INFO] [stdout]      |                 ---------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   60 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:240:27
[INFO] [stdout]     |
[INFO] [stdout] 233 |                     let client = UpstreamClient::new(session_url.clone(), session_token.clone());
[INFO] [stdout]     |                         ------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `client` calls a custom destructor
[INFO] [stdout]     |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 240 |                     match client.post_json("/api/v1/session/profiles", &profile_body).await
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                           |                                                           |
[INFO] [stdout]     |                           |                                                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                           |                                                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 246 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:256:37
[INFO] [stdout]     |
[INFO] [stdout] 251 |                     let client = UpstreamClient::new(session_url.clone(), session_token.clone());
[INFO] [stdout]     |                         ------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `client` calls a custom destructor
[INFO] [stdout]     |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 256 |                     if let Err(e) = client.post_json("/api/v1/session/switch", &switch_body).await {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                                     |                                                        |
[INFO] [stdout]     |                                     |                                                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                     |                                                        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 259 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/cli/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:256:94
[INFO] [stdout]     |
[INFO] [stdout] 251 |                     let client = UpstreamClient::new(session_url.clone(), session_token.clone());
[INFO] [stdout]     |                         ------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `client` calls a custom destructor
[INFO] [stdout]     |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 256 |                     if let Err(e) = client.post_json("/api/v1/session/switch", &switch_body).await {
[INFO] [stdout]     |                                                                                              ^^^^^
[INFO] [stdout]     |                                                                                              |
[INFO] [stdout]     |                                                                                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                              up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 259 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:240:87
[INFO] [stdout]     |
[INFO] [stdout] 233 |                     let client = UpstreamClient::new(session_url.clone(), session_token.clone());
[INFO] [stdout]     |                         ------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `client` calls a custom destructor
[INFO] [stdout]     |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 240 |                     match client.post_json("/api/v1/session/profiles", &profile_body).await
[INFO] [stdout]     |                                                                                       ^^^^^
[INFO] [stdout]     |                                                                                       |
[INFO] [stdout]     |                                                                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 246 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:172:36
[INFO] [stdout]     |
[INFO] [stdout] 172 |                 if let Some(old) = sessions.remove(stale_id) {
[INFO] [stdout]     |                             ---    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                             |      |
[INFO] [stdout]     |                             |      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             |      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             `old` calls a custom destructor
[INFO] [stdout]     |                             `old` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 185 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> crates/mux/src/upstream/bridge.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for WsBridge {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `old` invokes this custom destructor
[INFO] [stdout]    --> crates/mux/src/upstream/bridge.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for WsBridge {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `old` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:195:35
[INFO] [stdout]     |
[INFO] [stdout] 195 |                 if let Some(ws) = watchers.remove(stale_id) {
[INFO] [stdout]     |                             --    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                             |     |
[INFO] [stdout]     |                             |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             `ws` calls a custom destructor
[INFO] [stdout]     |                             `ws` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 199 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ws` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:361:11
[INFO] [stdout]     |
[INFO] [stdout] 352 |     let entry = match sessions.get(&id) {
[INFO] [stdout]     |         -----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `entry` calls a custom destructor
[INFO] [stdout]     |         `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 360 |     let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `client` calls a custom destructor
[INFO] [stdout]     |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] 361 |     match client.get_agent().await {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |           |                  |
[INFO] [stdout]     |           |                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |           |                  up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 367 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> crates/mux/src/upstream/bridge.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for WsBridge {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:361:30
[INFO] [stdout]     |
[INFO] [stdout] 352 |     let entry = match sessions.get(&id) {
[INFO] [stdout]     |         -----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `entry` calls a custom destructor
[INFO] [stdout]     |         `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 360 |     let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `client` calls a custom destructor
[INFO] [stdout]     |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] 361 |     match client.get_agent().await {
[INFO] [stdout]     |                              ^^^^^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                              up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 367 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> crates/mux/src/upstream/bridge.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for WsBridge {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/mux/src/transport/http.rs:476:11
[INFO] [stdout]      |
[INFO] [stdout]  438 |     let mut cmd = tokio::process::Command::new("sh");
[INFO] [stdout]      |         -------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `cmd` calls a custom destructor
[INFO] [stdout]      |         `cmd` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  476 |     match cmd.spawn() {
[INFO] [stdout]      |           ^^^^^^^^^^^
[INFO] [stdout]      |           |
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  483 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/process/mod.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl<T: Kill> Drop for ChildDropGuard<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `cmd` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/os/fd/owned.rs:196:0
[INFO] [stdout]      = note: `cmd` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `cmd` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/process/unix/common/cstring_array.rs:79:0
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:502:11
[INFO] [stdout]     |
[INFO] [stdout] 493 |     let entry = match sessions.get(session_id) {
[INFO] [stdout]     |         -----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `entry` calls a custom destructor
[INFO] [stdout]     |         `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 501 |     let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `client` calls a custom destructor
[INFO] [stdout]     |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] 502 |     match client.post_json(path, &body).await {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |           |                             |
[INFO] [stdout]     |           |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |           |                             up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 508 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> crates/mux/src/upstream/bridge.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for WsBridge {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/http.rs:502:41
[INFO] [stdout]     |
[INFO] [stdout] 493 |     let entry = match sessions.get(session_id) {
[INFO] [stdout]     |         -----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `entry` calls a custom destructor
[INFO] [stdout]     |         `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 501 |     let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `client` calls a custom destructor
[INFO] [stdout]     |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] 502 |     match client.post_json(path, &body).await {
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 508 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> crates/mux/src/upstream/bridge.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for WsBridge {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.18/src/sync/cancellation_token.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Drop for CancellationToken {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/ws_mux.rs:210:47
[INFO] [stdout]     |
[INFO] [stdout] 175 | /         tokio::select! {
[INFO] [stdout] 176 | |             // Mux events (state transitions, online/offline).
[INFO] [stdout] 177 | |             event = event_rx.recv() => {
[INFO] [stdout] 178 | |                 let event = match event {
[INFO] [stdout] ...   |
[INFO] [stdout] 195 | |                     if send_json(&mut ws_tx, &msg).await.is_err() {
[INFO] [stdout]     | |                        ---------------------------------
[INFO] [stdout]     | |                        |
[INFO] [stdout]     | |                        `__awaitee` calls a custom destructor
[INFO] [stdout]     | |                        `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 206 | |                 let sessions = state.sessions.read().await;
[INFO] [stdout]     | |                     --------   ---------------------------
[INFO] [stdout]     | |                     |          |                     |
[INFO] [stdout]     | |                     |          |                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     | |                     |          |                     `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                     |          this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     | |                     |          `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                     `sessions` calls a custom destructor
[INFO] [stdout]     | |                     `sessions` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 210 | |                         if let Some(screen) = entry.cached_screen.read().await.as_ref() {
[INFO] [stdout]     | |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     | |                                               |                          |
[INFO] [stdout]     | |                                               |                          this value will be stored in a temporary; let us call it `#19`
[INFO] [stdout]     | |                                               |                          up until Edition 2021 `#19` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                                               |                          this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     | |                                               |                          `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                               this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]     | |                                               up until Edition 2021 `#18` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     | |                                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 220 | |                     }
[INFO] [stdout]     | |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...   |
[INFO] [stdout] 224 | |                     if send_json(&mut ws_tx, &msg).await.is_err() {
[INFO] [stdout]     | |                        ---------------------------------
[INFO] [stdout]     | |                        |
[INFO] [stdout]     | |                        this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     | |                        `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 231 | |             msg = ws_rx.next() => {
[INFO] [stdout]     | |             ---
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |             `msg` calls a custom destructor
[INFO] [stdout]     | |             `msg` will be dropped later as of Edition 2024
[INFO] [stdout] 232 | |                 let msg = match msg {
[INFO] [stdout]     | |                     ---
[INFO] [stdout]     | |                     |
[INFO] [stdout]     | |                     this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     | |                     `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 237 | |                     Message::Text(text) => {
[INFO] [stdout]     | |                                   ----
[INFO] [stdout]     | |                                   |
[INFO] [stdout]     | |                                   `text` calls a custom destructor
[INFO] [stdout]     | |                                   `text` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 244 | |                                             start_watching(&state, &sid).await;
[INFO] [stdout]     | |                                             ----------------------------------
[INFO] [stdout]     | |                                             |
[INFO] [stdout]     | |                                             this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     | |                                             `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 251 | |                                         let sessions_lock = state.sessions.read().await;
[INFO] [stdout]     | |                                                             ---------------------------
[INFO] [stdout]     | |                                                             |                     |
[INFO] [stdout]     | |                                                             |                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     | |                                                             |                     `#10` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                             this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     | |                                                             `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 255 | |                                                 if let Some(screen) = entry.cached_screen.read().await.as_ref() {
[INFO] [stdout]     | |                                                                       --------------------------------
[INFO] [stdout]     | |                                                                       |                          |
[INFO] [stdout]     | |                                                                       |                          this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]     | |                                                                       |                          `#12` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                                       this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]     | |                                                                       `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 270 | |                                             if send_json(&mut ws_tx, &msg).await.is_err() {
[INFO] [stdout]     | |                                                ---------------------------------
[INFO] [stdout]     | |                                                |
[INFO] [stdout]     | |                                                this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]     | |                                                `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 279 | |                                             stop_watching(&state, &sid).await;
[INFO] [stdout]     | |                                             ---------------------------------
[INFO] [stdout]     | |                                             |
[INFO] [stdout]     | |                                             this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]     | |                                             `#14` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 284 | |                                     proxy_input(&state, &session, &text, enter).await;
[INFO] [stdout]     | |                                     -------------------------------------------------
[INFO] [stdout]     | |                                     |
[INFO] [stdout]     | |                                     this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]     | |                                     `#15` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 287 | |                                     proxy_resize(&state, &session, cols, rows).await;
[INFO] [stdout]     | |                                     ------------------------------------------------
[INFO] [stdout]     | |                                     |
[INFO] [stdout]     | |                                     this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]     | |                                     `#16` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 292 | |                             if send_json(&mut ws_tx, &err).await.is_err() {
[INFO] [stdout]     | |                                ---------------------------------
[INFO] [stdout]     | |                                |
[INFO] [stdout]     | |                                this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]     | |                                `#17` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 301 | |         }
[INFO] [stdout]     | |         -
[INFO] [stdout]     | |         |
[INFO] [stdout]     | |         `output` calls a custom destructor
[INFO] [stdout]     | |         `output` will be dropped later as of Edition 2024
[INFO] [stdout]     | |         `futures_init` calls a custom destructor
[INFO] [stdout]     | |         `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]     | |         `futures` calls a custom destructor
[INFO] [stdout]     | |         `futures` will be dropped later as of Edition 2024
[INFO] [stdout]     | |_________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `output` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `sessions` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/transport/ws_mux.rs:255:71
[INFO] [stdout]     |
[INFO] [stdout] 175 | /         tokio::select! {
[INFO] [stdout] 176 | |             // Mux events (state transitions, online/offline).
[INFO] [stdout] 177 | |             event = event_rx.recv() => {
[INFO] [stdout] 178 | |                 let event = match event {
[INFO] [stdout] ...   |
[INFO] [stdout] 195 | |                     if send_json(&mut ws_tx, &msg).await.is_err() {
[INFO] [stdout]     | |                        ---------------------------------
[INFO] [stdout]     | |                        |
[INFO] [stdout]     | |                        `__awaitee` calls a custom destructor
[INFO] [stdout]     | |                        `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 206 | |                 let sessions = state.sessions.read().await;
[INFO] [stdout]     | |                     --------   ---------------------------
[INFO] [stdout]     | |                     |          |                     |
[INFO] [stdout]     | |                     |          |                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     | |                     |          |                     `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                     |          this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     | |                     |          `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                     `sessions` calls a custom destructor
[INFO] [stdout]     | |                     `sessions` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 210 | |                         if let Some(screen) = entry.cached_screen.read().await.as_ref() {
[INFO] [stdout]     | |                                               --------------------------------
[INFO] [stdout]     | |                                               |                          |
[INFO] [stdout]     | |                                               |                          this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     | |                                               |                          `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     | |                                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 224 | |                     if send_json(&mut ws_tx, &msg).await.is_err() {
[INFO] [stdout]     | |                        ---------------------------------
[INFO] [stdout]     | |                        |
[INFO] [stdout]     | |                        this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     | |                        `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 231 | |             msg = ws_rx.next() => {
[INFO] [stdout]     | |             ---
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |             `msg` calls a custom destructor
[INFO] [stdout]     | |             `msg` will be dropped later as of Edition 2024
[INFO] [stdout] 232 | |                 let msg = match msg {
[INFO] [stdout]     | |                     ---
[INFO] [stdout]     | |                     |
[INFO] [stdout]     | |                     this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     | |                     `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 237 | |                     Message::Text(text) => {
[INFO] [stdout]     | |                                   ----
[INFO] [stdout]     | |                                   |
[INFO] [stdout]     | |                                   `text` calls a custom destructor
[INFO] [stdout]     | |                                   `text` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 244 | |                                             start_watching(&state, &sid).await;
[INFO] [stdout]     | |                                             ----------------------------------
[INFO] [stdout]     | |                                             |
[INFO] [stdout]     | |                                             this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     | |                                             `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 251 | |                                         let sessions_lock = state.sessions.read().await;
[INFO] [stdout]     | |                                                             ---------------------------
[INFO] [stdout]     | |                                                             |                     |
[INFO] [stdout]     | |                                                             |                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     | |                                                             |                     `#10` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                             this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     | |                                                             `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 255 | |                                                 if let Some(screen) = entry.cached_screen.read().await.as_ref() {
[INFO] [stdout]     | |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     | |                                                                       |                          |
[INFO] [stdout]     | |                                                                       |                          this value will be stored in a temporary; let us call it `#19`
[INFO] [stdout]     | |                                                                       |                          up until Edition 2021 `#19` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                                                                       |                          this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]     | |                                                                       |                          `#12` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                                       this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]     | |                                                                       up until Edition 2021 `#18` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                                                                       this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]     | |                                                                       `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 265 | |                                             }
[INFO] [stdout]     | |                                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...   |
[INFO] [stdout] 270 | |                                             if send_json(&mut ws_tx, &msg).await.is_err() {
[INFO] [stdout]     | |                                                ---------------------------------
[INFO] [stdout]     | |                                                |
[INFO] [stdout]     | |                                                this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]     | |                                                `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 279 | |                                             stop_watching(&state, &sid).await;
[INFO] [stdout]     | |                                             ---------------------------------
[INFO] [stdout]     | |                                             |
[INFO] [stdout]     | |                                             this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]     | |                                             `#14` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 284 | |                                     proxy_input(&state, &session, &text, enter).await;
[INFO] [stdout]     | |                                     -------------------------------------------------
[INFO] [stdout]     | |                                     |
[INFO] [stdout]     | |                                     this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]     | |                                     `#15` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 287 | |                                     proxy_resize(&state, &session, cols, rows).await;
[INFO] [stdout]     | |                                     ------------------------------------------------
[INFO] [stdout]     | |                                     |
[INFO] [stdout]     | |                                     this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]     | |                                     `#16` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 292 | |                             if send_json(&mut ws_tx, &err).await.is_err() {
[INFO] [stdout]     | |                                ---------------------------------
[INFO] [stdout]     | |                                |
[INFO] [stdout]     | |                                this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]     | |                                `#17` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 301 | |         }
[INFO] [stdout]     | |         -
[INFO] [stdout]     | |         |
[INFO] [stdout]     | |         `output` calls a custom destructor
[INFO] [stdout]     | |         `output` will be dropped later as of Edition 2024
[INFO] [stdout]     | |         `futures_init` calls a custom destructor
[INFO] [stdout]     | |         `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]     | |         `futures` calls a custom destructor
[INFO] [stdout]     | |         `futures` will be dropped later as of Edition 2024
[INFO] [stdout]     | |_________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `output` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `sessions` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/upstream/health.rs:40:23
[INFO] [stdout]     |
[INFO] [stdout]  39 |                 let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |                     ------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `client` calls a custom destructor
[INFO] [stdout]     |                     `client` will be dropped later as of Edition 2024
[INFO] [stdout]  40 |                 match client.health().await {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                       |               |
[INFO] [stdout]     |                       |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                       |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  68 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/upstream/health.rs:40:39
[INFO] [stdout]     |
[INFO] [stdout]  39 |                 let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |                     ------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `client` calls a custom destructor
[INFO] [stdout]     |                     `client` will be dropped later as of Edition 2024
[INFO] [stdout]  40 |                 match client.health().await {
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  68 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/mux/src/upstream/poller.rs:41:23
[INFO] [stdout]      |
[INFO] [stdout]   36 | /                 tokio::select! {
[INFO] [stdout]   37 | |                     _ = cancel.cancelled() => break,
[INFO] [stdout]   38 | |                     _ = interval.tick() => {}
[INFO] [stdout]   39 | |                 }
[INFO] [stdout]      | |                 -
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |                 `futures_init` calls a custom destructor
[INFO] [stdout]      | |                 `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_________________`futures` calls a custom destructor
[INFO] [stdout]      |                   `futures` will be dropped later as of Edition 2024
[INFO] [stdout]   40 |
[INFO] [stdout]   41 |                   match client.get_screen().await {
[INFO] [stdout]      |                         ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                         |                   |
[INFO] [stdout]      |                         |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                         |                   up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                         up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   63 |                           *entry.cached_screen.write().await = Some(screen);
[INFO] [stdout]      |                            ---------------------------------
[INFO] [stdout]      |                            |                           |
[INFO] [stdout]      |                            |                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            |                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout]   64 |                       }
[INFO] [stdout]   65 |                       Err(e) => {
[INFO] [stdout]      |                           -
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `e` calls a custom destructor
[INFO] [stdout]      |                           `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   69 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/mux/src/upstream/poller.rs:87:23
[INFO] [stdout]      |
[INFO] [stdout]   82 | /                 tokio::select! {
[INFO] [stdout]   83 | |                     _ = cancel.cancelled() => break,
[INFO] [stdout]   84 | |                     _ = interval.tick() => {}
[INFO] [stdout]   85 | |                 }
[INFO] [stdout]      | |                 -
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |                 `futures_init` calls a custom destructor
[INFO] [stdout]      | |                 `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_________________`futures` calls a custom destructor
[INFO] [stdout]      |                   `futures` will be dropped later as of Edition 2024
[INFO] [stdout]   86 |
[INFO] [stdout]   87 |                   match client.get_status().await {
[INFO] [stdout]      |                         ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                         |                   |
[INFO] [stdout]      |                         |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                         |                   up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                         up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  127 |                           *entry.cached_status.write().await = Some(status);
[INFO] [stdout]      |                            ---------------------------------
[INFO] [stdout]      |                            |                           |
[INFO] [stdout]      |                            |                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            |                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  128 |                       }
[INFO] [stdout]  129 |                       Err(e) => {
[INFO] [stdout]      |                           -
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `e` calls a custom destructor
[INFO] [stdout]      |                           `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  133 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/upstream/prewarm.rs:124:36
[INFO] [stdout]     |
[INFO] [stdout]  96 |                 let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |                     ------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `client` calls a custom destructor
[INFO] [stdout]     |                     `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 124 |                 if let Ok(value) = client.get_status().await {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                                    |                   |
[INFO] [stdout]     |                                    |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                    |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 154 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/mux/src/upstream/prewarm.rs:124:56
[INFO] [stdout]     |
[INFO] [stdout]  96 |                 let client = UpstreamClient::new(entry.url.clone(), entry.auth_token.clone());
[INFO] [stdout]     |                     ------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `client` calls a custom destructor
[INFO] [stdout]     |                     `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 124 |                 if let Ok(value) = client.get_status().await {
[INFO] [stdout]     |                                                        ^^^^^
[INFO] [stdout]     |                                                        |
[INFO] [stdout]     |                                                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 154 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed crates/cli/src/mux_client.rs (1 fix)
[INFO] [stderr]        Fixed crates/cli/src/driver/claude/resume.rs (1 fix)
[INFO] [stderr]        Fixed crates/cli/src/stop.rs (1 fix)
[INFO] [stderr]        Fixed crates/cli/src/test_support.rs (2 fixes)
[INFO] [stderr]        Fixed crates/cli/src/session/transition.rs (1 fix)
[INFO] [stderr]        Fixed crates/cli/src/start.rs (1 fix)
[INFO] [stderr]        Fixed crates/cli/src/command/attach.rs (1 fix)
[INFO] [stderr]        Fixed crates/cli/src/config.rs (1 fix)
[INFO] [stderr]        Fixed crates/cli/src/backend/spawn.rs (3 fixes)
[INFO] [stderr]        Fixed crates/cli/src/transport/ws.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/command/attach.rs:399:19
[INFO] [stdout]      |
[INFO] [stdout]  396 |           let ws_stream = match pending_ws.take() { Some(ws) => {
[INFO] [stdout]      |                                 -----------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  399 |               match connect_ws(url, socket).await {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                     |                       |
[INFO] [stdout]      |                     |                       this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      |                     |                       up until Edition 2021 `#16` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                     |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                     |                       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                     up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                     `__awaitee` calls a custom destructor
[INFO] [stdout]      |                     `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  419 |                       tokio::time::sleep(backoff).await;
[INFO] [stdout]      |                       ---------------------------------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                       `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  423 |           }};
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]  424 |
[INFO] [stdout]  425 |           let (mut ws_tx, mut ws_rx) = ws_stream.split();
[INFO] [stdout]      |                ---------  ---------    -----------------
[INFO] [stdout]      |                |          |            |
[INFO] [stdout]      |                |          |            this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                |          |            `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                |          `ws_rx` calls a custom destructor
[INFO] [stdout]      |                |          `ws_rx` will be dropped later as of Edition 2024
[INFO] [stdout]      |                `ws_tx` calls a custom destructor
[INFO] [stdout]      |                `ws_tx` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  429 |               let _ = send_msg(&mut ws_tx, &ClientMessage::Auth { token: token.to_owned() }).await;
[INFO] [stdout]      |                       ----------------------------------------------------------------------------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  439 | /             send_msg(&mut ws_tx, &ClientMessage::Resize { cols: state.cols, rows: content_rows })
[INFO] [stdout]  440 | |                 .await;
[INFO] [stdout]      | |                      -
[INFO] [stdout]      | |                      |
[INFO] [stdout]      | |______________________this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                        `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  449 | /             send_msg(&mut ws_tx, &ClientMessage::GetReplay { offset: replay_offset, limit: None })
[INFO] [stdout]  450 | |                 .await;
[INFO] [stdout]      | |                      -
[INFO] [stdout]      | |______________________|
[INFO] [stdout]      | |______________________this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                        `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  461 | |             let _ = send_msg(&mut ws_tx, &ClientMessage::GetAgent {}).await;
[INFO] [stdout]      | |                     -------------------------------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                     `#8` will be dropped later as of Edition 2024
[INFO] [stdout]  462 | |         }
[INFO] [stdout]  463 | |         ctx.refresh_statusline().await;
[INFO] [stdout]      | |         ------------------------------
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |         `#9` will be dropped later as of Edition 2024
[INFO] [stdout]  464 | |
[INFO] [stdout]  465 | |         let result = connect_and_run(&mut ws_tx, &mut ws_rx, &mut ctx).await;
[INFO] [stdout]      | |                      -------------------------------------------------------
[INFO] [stdout]      | |                      |
[INFO] [stdout]      | |                      this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      | |                      `#10` will be dropped later as of Edition 2024
[INFO] [stdout]  466 | |         let _ = ws_tx.send(tokio_tungstenite::tungstenite::Message::Close(None)).await;
[INFO] [stdout]      | |                 ----------------------------------------------------------------------
[INFO] [stdout]      | |                 |                                                                |
[INFO] [stdout]      | |                 |                                                                this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      | |                 |                                                                `#13` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                 this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      | |                 `#11` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                 this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      | |                 `#12` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  501 | |                 tokio::time::sleep(backoff).await;
[INFO] [stdout]      | |                 ---------------------------------
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |                 this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      | |                 `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes_mut.rs:1126:1
[INFO] [stdout]      |
[INFO] [stdout] 1126 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes_mut.rs:1126:1
[INFO] [stdout]      |
[INFO] [stdout] 1126 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes_mut.rs:1126:1
[INFO] [stdout]      |
[INFO] [stdout] 1126 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `ws_tx` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ws_tx` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lock/bilock.rs:200:1
[INFO] [stdout]      |
[INFO] [stdout]  200 | impl<T> Drop for Inner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ws_rx` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lock/bilock.rs:200:1
[INFO] [stdout]      |
[INFO] [stdout]  200 | impl<T> Drop for Inner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lock/bilock.rs:200:1
[INFO] [stdout]      |
[INFO] [stdout]  200 | impl<T> Drop for Inner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#11` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/command/attach.rs:628:37
[INFO] [stdout]      |
[INFO] [stdout]  627 | ...                   while let Ok(Some(Ok(tokio_tungstenite::tungstenite::Message::Text(text)))) =
[INFO] [stdout]      |                                                                                          ----
[INFO] [stdout]      |                                                                                          |
[INFO] [stdout]      |                                                                                          `text` calls a custom destructor
[INFO] [stdout]      |                                                                                          `text` will be dropped later as of Edition 2024
[INFO] [stdout]  628 | ...                       tokio::time::timeout_at(deadline, ws_rx.next()).await
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                           |                                               |
[INFO] [stdout]      |                           |                                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                           |                                               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                           |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           |                                               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                           `__awaitee` calls a custom destructor
[INFO] [stdout]      |                           `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  639 | ...                   }
[INFO] [stdout]      |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/driver/log_watch.rs:95:19
[INFO] [stdout]      |
[INFO] [stdout]   89 | /             tokio::select! {
[INFO] [stdout]   90 | |                 _ = shutdown.cancelled() => break,
[INFO] [stdout]   91 | |                 _ = wake_rx.recv() => {}
[INFO] [stdout]   92 | |                 _ = poll_interval.tick() => {}
[INFO] [stdout]   93 | |             }
[INFO] [stdout]      | |             -
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `futures_init` calls a custom destructor
[INFO] [stdout]      | |             `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_____________`futures` calls a custom destructor
[INFO] [stdout]      |               `futures` will be dropped later as of Edition 2024
[INFO] [stdout]   94 |
[INFO] [stdout]   95 |               match self.read_new_lines() {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]   96 |                   Ok(lines) if !lines.is_empty() => {
[INFO] [stdout]   97 |                       if line_tx.send(lines).await.is_err() {
[INFO] [stdout]      |                          -------------------------
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          `__awaitee` calls a custom destructor
[INFO] [stdout]      |                          `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  103 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/mux_client.rs:92:15
[INFO] [stdout]      |
[INFO] [stdout]   92 |           match register(&client, &base, &config).await {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                 |                                 |
[INFO] [stdout]      |                 |                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                 |                                 up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                 |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                 |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                 up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                 `__awaitee` calls a custom destructor
[INFO] [stdout]      |                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   98 |               Err(e) => {
[INFO] [stdout]      |                   -
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   `e` calls a custom destructor
[INFO] [stdout]      |                   `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  107 | /                 tokio::select! {
[INFO] [stdout]  108 | |                     _ = tokio::time::sleep(delay) => {}
[INFO] [stdout]  109 | |                     _ = shutdown.cancelled() => return,
[INFO] [stdout]  110 | |                 }
[INFO] [stdout]      | |                 -
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |                 `futures_init` calls a custom destructor
[INFO] [stdout]      | |                 `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_________________`futures` calls a custom destructor
[INFO] [stdout]      |                   `futures` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  113 |       }
[INFO] [stdout]      |       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/mux_client.rs:127:23
[INFO] [stdout]      |
[INFO] [stdout]  125 | /         tokio::select! {
[INFO] [stdout]  126 | |             _ = tokio::time::sleep(heartbeat) => {
[INFO] [stdout]  127 | |                 match register(&client, &base, &config).await {
[INFO] [stdout]      | |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      | |                       |                                 |
[INFO] [stdout]      | |                       |                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                       |                                 up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                       |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      | |                       |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                       `__awaitee` calls a custom destructor
[INFO] [stdout]      | |                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  128 | |                     Ok(()) => {
[INFO] [stdout] ...    |
[INFO] [stdout]  134 | |                     Err(e) => {
[INFO] [stdout]      | |                         -
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |                         `e` calls a custom destructor
[INFO] [stdout]      | |                         `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  139 | |             _ = shutdown.cancelled() => break,
[INFO] [stdout]  140 | |         }
[INFO] [stdout]      | |         -
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |         `futures_init` calls a custom destructor
[INFO] [stdout]      | |         `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         `futures` calls a custom destructor
[INFO] [stdout]      | |_________`futures` will be dropped later as of Edition 2024
[INFO] [stdout]      |           now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/mux_client.rs:144:11
[INFO] [stdout]     |
[INFO] [stdout]  79 |     let client = reqwest::Client::builder()
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `client` calls a custom destructor
[INFO] [stdout]     |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 144 |     match deregister(&client, &base, &config).await { Err(e) => {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |           |                                   |
[INFO] [stdout]     |           |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |           |                                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 149 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/mux_client.rs:144:47
[INFO] [stdout]     |
[INFO] [stdout]  79 |     let client = reqwest::Client::builder()
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `client` calls a custom destructor
[INFO] [stdout]     |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 144 |     match deregister(&client, &base, &config).await { Err(e) => {
[INFO] [stdout]     |                                               ^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 149 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/session/groom.rs:220:33
[INFO] [stdout]      |
[INFO] [stdout]  206 |         if store.channels.input_tx.send(InputEvent::Write(Bytes::from(step.bytes))).await.is_err() {
[INFO] [stdout]      |            ------------------------------------------------------------------------------
[INFO] [stdout]      |            |                                                                        |
[INFO] [stdout]      |            |                                                                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |            |                                                                        `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |            `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |            `__awaitee` calls a custom destructor
[INFO] [stdout]      |            `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  210 |             let (drain_tx, drain_rx) = tokio::sync::oneshot::channel();
[INFO] [stdout]      |                                        -------------------------------
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  211 |             let _ = store.channels.input_tx.send(InputEvent::WaitForDrain(drain_tx)).await;
[INFO] [stdout]      |                     ----------------------------------------------------------------------
[INFO] [stdout]      |                     |                                                                |
[INFO] [stdout]      |                     |                                                                this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                     |                                                                `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                     `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                     `#5` will be dropped later as of Edition 2024
[INFO] [stdout]  212 |             let _ = drain_rx.await;
[INFO] [stdout]      |                     --------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                     `#7` will be dropped later as of Edition 2024
[INFO] [stdout]  213 |             tokio::time::sleep(delay).await;
[INFO] [stdout]      |             -------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |             `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  220 |             if let Ok(screen) = store.terminal.screen.try_read() {
[INFO] [stdout]      |                       ------    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |         |
[INFO] [stdout]      |                       |         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                       |         up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       `screen` calls a custom destructor
[INFO] [stdout]      |                       `screen` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  225 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]      |
[INFO] [stdout]  871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]      |
[INFO] [stdout]  871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]      |
[INFO] [stdout]  871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]      |
[INFO] [stdout]  871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:1245:1
[INFO] [stdout]      |
[INFO] [stdout] 1245 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/session/run.rs:103:58
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let (_, mut switch_rx) = mpsc::channel(1);
[INFO] [stdout]     |                 -------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `switch_rx` calls a custom destructor
[INFO] [stdout]     |                 `switch_rx` will be dropped later as of Edition 2024
[INFO] [stdout] 103 |         match self.run(config, input_rx, &mut switch_rx).await? {
[INFO] [stdout]     |                                                          ^^^^^
[INFO] [stdout]     |                                                          |
[INFO] [stdout]     |                                                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 107 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `switch_rx` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:489:1
[INFO] [stdout]     |
[INFO] [stdout] 489 | impl<T, S: Semaphore> Drop for Rx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/session/transition.rs:213:27
[INFO] [stdout]     |
[INFO] [stdout] 213 |     while let Ok(bytes) = rx.try_recv() {
[INFO] [stdout]     |                  -----    ^^^^^^^^^^^^^
[INFO] [stdout]     |                  |        |
[INFO] [stdout]     |                  |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                  |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                  `bytes` calls a custom destructor
[INFO] [stdout]     |                  `bytes` will be dropped later as of Edition 2024
[INFO] [stdout] 214 |         feed_output(store, &bytes).await;
[INFO] [stdout]     |         --------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__awaitee` calls a custom destructor
[INFO] [stdout]     |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 215 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bytes` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/test_support.rs:449:37
[INFO] [stdout]     |
[INFO] [stdout] 449 |           while let Ok((stream, _)) = uds_listener.accept().await {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                                       |                     |
[INFO] [stdout]     |                                       |                     this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                       |                     up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                       |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                       |                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                       `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 450 |               let svc_future = <_ as tower::Service<_>>::call(&mut make_svc, ());
[INFO] [stdout] 451 | /             tokio::spawn(async move {
[INFO] [stdout] 452 | |                 let Ok(svc) = svc_future.await;
[INFO] [stdout] 453 | |                 let io = hyper_util::rt::TokioIo::new(stream);
[INFO] [stdout] 454 | |                 let hyper_svc = hyper_util::service::TowerToHyperService::new(svc);
[INFO] [stdout] ...   |
[INFO] [stdout] 459 | |                 .await;
[INFO] [stdout] 460 | |             });
[INFO] [stdout]     | |              -
[INFO] [stdout]     | |              |
[INFO] [stdout]     | |______________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 461 |           }
[INFO] [stdout]     |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]     |
[INFO] [stdout] 290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]     |
[INFO] [stdout] 290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/join.rs:353:1
[INFO] [stdout]     |
[INFO] [stdout] 353 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/http/agent.rs:88:23
[INFO] [stdout]     |
[INFO] [stdout]  62 |       let state = s.driver.agent_state.read().await;
[INFO] [stdout]     |           -----
[INFO] [stdout]     |           |
[INFO] [stdout]     |           `state` calls a custom destructor
[INFO] [stdout]     |           `state` will be dropped later as of Edition 2024
[INFO] [stdout]  63 |       let screen = s.terminal.screen.read().await;
[INFO] [stdout]     |           ------
[INFO] [stdout]     |           |
[INFO] [stdout]     |           `screen` calls a custom destructor
[INFO] [stdout]     |           `screen` will be dropped later as of Edition 2024
[INFO] [stdout]  64 |       let detection = s.driver.detection.read().await;
[INFO] [stdout]     |           ---------
[INFO] [stdout]     |           |
[INFO] [stdout]     |           `detection` calls a custom destructor
[INFO] [stdout]     |           `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  78 |           error_detail: s.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                         ---------------------------
[INFO] [stdout]     |                         |                     |
[INFO] [stdout]     |                         |                     this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                         |                     up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                         up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  79 |           error_category: s
[INFO] [stdout]     |  _________________________-
[INFO] [stdout]  80 | |             .driver
[INFO] [stdout]  81 | |             .error
[INFO] [stdout]  82 | |             .read()
[INFO] [stdout]  83 | |             .await
[INFO] [stdout]     | |              -----
[INFO] [stdout]     | |              |   |
[INFO] [stdout]     | |______________|___this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                |   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  88 |           last_message: s.driver.last_message.read().await.clone(),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                         |                            |
[INFO] [stdout]     |                         |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                         |                            up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  91 |   }
[INFO] [stdout]     |   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `state` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/http/agent.rs:88:52
[INFO] [stdout]     |
[INFO] [stdout]  62 |       let state = s.driver.agent_state.read().await;
[INFO] [stdout]     |           -----
[INFO] [stdout]     |           |
[INFO] [stdout]     |           `state` calls a custom destructor
[INFO] [stdout]     |           `state` will be dropped later as of Edition 2024
[INFO] [stdout]  63 |       let screen = s.terminal.screen.read().await;
[INFO] [stdout]     |           ------
[INFO] [stdout]     |           |
[INFO] [stdout]     |           `screen` calls a custom destructor
[INFO] [stdout]     |           `screen` will be dropped later as of Edition 2024
[INFO] [stdout]  64 |       let detection = s.driver.detection.read().await;
[INFO] [stdout]     |           ---------
[INFO] [stdout]     |           |
[INFO] [stdout]     |           `detection` calls a custom destructor
[INFO] [stdout]     |           `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  78 |           error_detail: s.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                         ---------------------------
[INFO] [stdout]     |                         |                     |
[INFO] [stdout]     |                         |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                         |                     up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                         up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  79 |           error_category: s
[INFO] [stdout]     |  _________________________-
[INFO] [stdout]  80 | |             .driver
[INFO] [stdout]  81 | |             .error
[INFO] [stdout]  82 | |             .read()
[INFO] [stdout]  83 | |             .await
[INFO] [stdout]     | |              -----
[INFO] [stdout]     | |              |   |
[INFO] [stdout]     | |______________|___this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                |   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  88 |           last_message: s.driver.last_message.read().await.clone(),
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  91 |   }
[INFO] [stdout]     |   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `state` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/http/agent.rs:83:14
[INFO] [stdout]     |
[INFO] [stdout]  62 |     let state = s.driver.agent_state.read().await;
[INFO] [stdout]     |         -----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `state` calls a custom destructor
[INFO] [stdout]     |         `state` will be dropped later as of Edition 2024
[INFO] [stdout]  63 |     let screen = s.terminal.screen.read().await;
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `screen` calls a custom destructor
[INFO] [stdout]     |         `screen` will be dropped later as of Edition 2024
[INFO] [stdout]  64 |     let detection = s.driver.detection.read().await;
[INFO] [stdout]     |         ---------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `detection` calls a custom destructor
[INFO] [stdout]     |         `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  78 |         error_detail: s.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                       ---------------------------
[INFO] [stdout]     |                       |                     |
[INFO] [stdout]     |                       |                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                       |                     up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  83 |             .await
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |              up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  91 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `state` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/http/agent.rs:78:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |     let state = s.driver.agent_state.read().await;
[INFO] [stdout]     |         -----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `state` calls a custom destructor
[INFO] [stdout]     |         `state` will be dropped later as of Edition 2024
[INFO] [stdout]  63 |     let screen = s.terminal.screen.read().await;
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `screen` calls a custom destructor
[INFO] [stdout]     |         `screen` will be dropped later as of Edition 2024
[INFO] [stdout]  64 |     let detection = s.driver.detection.read().await;
[INFO] [stdout]     |         ---------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `detection` calls a custom destructor
[INFO] [stdout]     |         `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  78 |         error_detail: s.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  91 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `state` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]   --> crates/cli/src/driver/claude/resume.rs:72:30
[INFO] [stdout]    |
[INFO] [stdout] 72 |         if let Ok(entries) = std::fs::read_dir(dir) {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]    |                              up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 73 |             for entry in entries.flatten() {
[INFO] [stdout]    |                 -----    -----------------
[INFO] [stdout]    |                 |        |
[INFO] [stdout]    |                 |        `iter` calls a custom destructor
[INFO] [stdout]    |                 |        `iter` will be dropped later as of Edition 2024
[INFO] [stdout]    |                 |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]    |                 |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]    |                 `entry` calls a custom destructor
[INFO] [stdout]    |                 `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 86 |     }
[INFO] [stdout]    |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]    |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout]    = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/test_support.rs:298:39
[INFO] [stdout]     |
[INFO] [stdout] 298 |                 while let Some(msg) = input_rx.recv().await {
[INFO] [stdout]     |                                ---    ^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                                |      |               |
[INFO] [stdout]     |                                |      |               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                |      |               up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                |      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                |      |               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                |      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                |      up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                |      `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                |      `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                `msg` calls a custom destructor
[INFO] [stdout]     |                                `msg` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 301 |                             captured_input.lock().push(data);
[INFO] [stdout]     |                             ---------------------
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 307 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]     |
[INFO] [stdout] 871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]     |
[INFO] [stdout] 871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]     |
[INFO] [stdout] 871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/mutex.rs:701:1
[INFO] [stdout]     |
[INFO] [stdout] 701 | impl<'a, R: RawMutex + 'a, T: ?Sized + 'a> Drop for MutexGuard<'a, R, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/service.rs:113:23
[INFO] [stdout]     |
[INFO] [stdout] 113 |                 match output_rx.recv().await {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                       |                |
[INFO] [stdout]     |                       |                this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                       |                up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       |                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       |                `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                       up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       `__awaitee` calls a custom destructor
[INFO] [stdout]     |                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 114 |                     Ok(OutputEvent::Raw { data, offset }) => {
[INFO] [stdout]     |                                           ----
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           `data` calls a custom destructor
[INFO] [stdout]     |                                           `data` will be dropped later as of Edition 2024
[INFO] [stdout] 115 |                         let chunk = proto::OutputChunk { data: data.to_vec(), offset };
[INFO] [stdout] 116 |                         if tx.send(Ok(chunk)).await.is_err() {
[INFO] [stdout]     |                            ------------------------
[INFO] [stdout]     |                            |                  |
[INFO] [stdout]     |                            |                  this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                            |                  `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 125 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `data` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/service.rs:143:40
[INFO] [stdout]     |
[INFO] [stdout] 143 |                 match screen_rx.recv().await {
[INFO] [stdout]     |                       -----------------^^^^^
[INFO] [stdout]     |                       |                |
[INFO] [stdout]     |                       |                this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                       |                up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       `__awaitee` calls a custom destructor
[INFO] [stdout]     |                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 144 |                     Ok(_seq) => {
[INFO] [stdout] 145 |                         let s = terminal.screen.read().await;
[INFO] [stdout]     |                                 ----------------------------
[INFO] [stdout]     |                                 |                      |
[INFO] [stdout]     |                                 |                      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                 |                      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 149 |                         if tx.send(Ok(proto_snap)).await.is_err() {
[INFO] [stdout]     |                            -----------------------------
[INFO] [stdout]     |                            |                       |
[INFO] [stdout]     |                            |                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                            |                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                            `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/service.rs:251:27
[INFO] [stdout]     |
[INFO] [stdout]  29 |   #[tonic::async_trait]
[INFO] [stdout]     |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 227 |           let agent = self.state.driver.agent_state.read().await;
[INFO] [stdout]     |               -----
[INFO] [stdout]     |               |
[INFO] [stdout]     |               `agent` calls a custom destructor
[INFO] [stdout]     |               `agent` will be dropped later as of Edition 2024
[INFO] [stdout] 228 |           let screen = self.state.terminal.screen.read().await;
[INFO] [stdout]     |               ------
[INFO] [stdout]     |               |
[INFO] [stdout]     |               `screen` calls a custom destructor
[INFO] [stdout]     |               `screen` will be dropped later as of Edition 2024
[INFO] [stdout] 229 |
[INFO] [stdout] 230 |           let detection = self.state.driver.detection.read().await;
[INFO] [stdout]     |               ---------
[INFO] [stdout]     |               |
[INFO] [stdout]     |               `detection` calls a custom destructor
[INFO] [stdout]     |               `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 242 |               error_detail: self.state.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                             ------------------------------------
[INFO] [stdout]     |                             |                              |
[INFO] [stdout]     |                             |                              this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                             |                              up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                             up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 243 |               error_category: self
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 244 | |                 .state
[INFO] [stdout] 245 | |                 .driver
[INFO] [stdout] 246 | |                 .error
[INFO] [stdout] 247 | |                 .read()
[INFO] [stdout] 248 | |                 .await
[INFO] [stdout]     | |                  -----
[INFO] [stdout]     | |                  |   |
[INFO] [stdout]     | |__________________|___this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                    |   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                    this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                    up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 251 |               last_message: self.state.driver.last_message.read().await.clone(),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                             |                                     |
[INFO] [stdout]     |                             |                                     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                             |                                     up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/service.rs:251:65
[INFO] [stdout]     |
[INFO] [stdout]  29 |   #[tonic::async_trait]
[INFO] [stdout]     |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 227 |           let agent = self.state.driver.agent_state.read().await;
[INFO] [stdout]     |               -----
[INFO] [stdout]     |               |
[INFO] [stdout]     |               `agent` calls a custom destructor
[INFO] [stdout]     |               `agent` will be dropped later as of Edition 2024
[INFO] [stdout] 228 |           let screen = self.state.terminal.screen.read().await;
[INFO] [stdout]     |               ------
[INFO] [stdout]     |               |
[INFO] [stdout]     |               `screen` calls a custom destructor
[INFO] [stdout]     |               `screen` will be dropped later as of Edition 2024
[INFO] [stdout] 229 |
[INFO] [stdout] 230 |           let detection = self.state.driver.detection.read().await;
[INFO] [stdout]     |               ---------
[INFO] [stdout]     |               |
[INFO] [stdout]     |               `detection` calls a custom destructor
[INFO] [stdout]     |               `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 242 |               error_detail: self.state.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                             ------------------------------------
[INFO] [stdout]     |                             |                              |
[INFO] [stdout]     |                             |                              this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                             |                              up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                             up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 243 |               error_category: self
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 244 | |                 .state
[INFO] [stdout] 245 | |                 .driver
[INFO] [stdout] 246 | |                 .error
[INFO] [stdout] 247 | |                 .read()
[INFO] [stdout] 248 | |                 .await
[INFO] [stdout]     | |                  -----
[INFO] [stdout]     | |                  |   |
[INFO] [stdout]     | |__________________|___this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                    |   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                    this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                    up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 251 |               last_message: self.state.driver.last_message.read().await.clone(),
[INFO] [stdout]     |                                                                   ^^^^^
[INFO] [stdout]     |                                                                   |
[INFO] [stdout]     |                                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/service.rs:248:18
[INFO] [stdout]     |
[INFO] [stdout]  29 | #[tonic::async_trait]
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 227 |         let agent = self.state.driver.agent_state.read().await;
[INFO] [stdout]     |             -----
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `agent` calls a custom destructor
[INFO] [stdout]     |             `agent` will be dropped later as of Edition 2024
[INFO] [stdout] 228 |         let screen = self.state.terminal.screen.read().await;
[INFO] [stdout]     |             ------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `screen` calls a custom destructor
[INFO] [stdout]     |             `screen` will be dropped later as of Edition 2024
[INFO] [stdout] 229 |
[INFO] [stdout] 230 |         let detection = self.state.driver.detection.read().await;
[INFO] [stdout]     |             ---------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `detection` calls a custom destructor
[INFO] [stdout]     |             `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 242 |             error_detail: self.state.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                           ------------------------------------
[INFO] [stdout]     |                           |                              |
[INFO] [stdout]     |                           |                              this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                           |                              up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 248 |                 .await
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                  up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking coop-specs v1.0.0 (/opt/rustwide/workdir/tests/specs)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/service.rs:242:58
[INFO] [stdout]     |
[INFO] [stdout]  29 | #[tonic::async_trait]
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 227 |         let agent = self.state.driver.agent_state.read().await;
[INFO] [stdout]     |             -----
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `agent` calls a custom destructor
[INFO] [stdout]     |             `agent` will be dropped later as of Edition 2024
[INFO] [stdout] 228 |         let screen = self.state.terminal.screen.read().await;
[INFO] [stdout]     |             ------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `screen` calls a custom destructor
[INFO] [stdout]     |             `screen` will be dropped later as of Edition 2024
[INFO] [stdout] 229 |
[INFO] [stdout] 230 |         let detection = self.state.driver.detection.read().await;
[INFO] [stdout]     |             ---------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `detection` calls a custom destructor
[INFO] [stdout]     |             `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 242 |             error_detail: self.state.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                                                          ^^^^^
[INFO] [stdout]     |                                                          |
[INFO] [stdout]     |                                                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/mod.rs:37:41
[INFO] [stdout]     |
[INFO] [stdout]  35 |             match rx.recv().await {
[INFO] [stdout]     |                   ---------------
[INFO] [stdout]     |                   |         |
[INFO] [stdout]     |                   |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   |         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                   `__awaitee` calls a custom destructor
[INFO] [stdout]     |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  36 |                 Ok(event) => {
[INFO] [stdout]  37 |                     if let Some(item) = map_fn(event) {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                         up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  38 |                         if tx.send(Ok(item)).await.is_err() {
[INFO] [stdout]     |                            -----------------------
[INFO] [stdout]     |                            |                 |
[INFO] [stdout]     |                            |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                            |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  42 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/mod.rs:35:19
[INFO] [stdout]     |
[INFO] [stdout]  35 |             match rx.recv().await {
[INFO] [stdout]     |                   ^^^^^^^^^^-----
[INFO] [stdout]     |                   |         |
[INFO] [stdout]     |                   |         this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                   |         up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   |         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                   up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   `__awaitee` calls a custom destructor
[INFO] [stdout]     |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  38 |                         if tx.send(Ok(item)).await.is_err() {
[INFO] [stdout]     |                            -----------------------
[INFO] [stdout]     |                            |                 |
[INFO] [stdout]     |                            |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                            |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  46 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed crates/cli/src/mux_client_tests.rs (1 fix)
[INFO] [stderr]    Migrating crates/mux/src/main.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed crates/cli/src/command/attach_tests.rs (5 fixes)
[INFO] [stderr]        Fixed crates/cli/src/driver/claude/resume_tests.rs (2 fixes)
[INFO] [stderr]        Fixed crates/cli/src/driver/claude/setup_tests.rs (4 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/command/attach.rs:399:19
[INFO] [stdout]      |
[INFO] [stdout]  396 |           let ws_stream = match pending_ws.take() { Some(ws) => {
[INFO] [stdout]      |                                 -----------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  399 |               match connect_ws(url, socket).await {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                     |                       |
[INFO] [stdout]      |                     |                       this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      |                     |                       up until Edition 2021 `#16` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                     |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                     |                       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                     up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                     `__awaitee` calls a custom destructor
[INFO] [stdout]      |                     `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  419 |                       tokio::time::sleep(backoff).await;
[INFO] [stdout]      |                       ---------------------------------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                       `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  423 |           }};
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]  424 |
[INFO] [stdout]  425 |           let (mut ws_tx, mut ws_rx) = ws_stream.split();
[INFO] [stdout]      |                ---------  ---------    -----------------
[INFO] [stdout]      |                |          |            |
[INFO] [stdout]      |                |          |            this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                |          |            `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                |          `ws_rx` calls a custom destructor
[INFO] [stdout]      |                |          `ws_rx` will be dropped later as of Edition 2024
[INFO] [stdout]      |                `ws_tx` calls a custom destructor
[INFO] [stdout]      |                `ws_tx` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  429 |               let _ = send_msg(&mut ws_tx, &ClientMessage::Auth { token: token.to_owned() }).await;
[INFO] [stdout]      |                       ----------------------------------------------------------------------------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  439 | /             send_msg(&mut ws_tx, &ClientMessage::Resize { cols: state.cols, rows: content_rows })
[INFO] [stdout]  440 | |                 .await;
[INFO] [stdout]      | |                      -
[INFO] [stdout]      | |                      |
[INFO] [stdout]      | |______________________this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                        `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  449 | /             send_msg(&mut ws_tx, &ClientMessage::GetReplay { offset: replay_offset, limit: None })
[INFO] [stdout]  450 | |                 .await;
[INFO] [stdout]      | |                      -
[INFO] [stdout]      | |______________________|
[INFO] [stdout]      | |______________________this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                        `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  461 | |             let _ = send_msg(&mut ws_tx, &ClientMessage::GetAgent {}).await;
[INFO] [stdout]      | |                     -------------------------------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                     `#8` will be dropped later as of Edition 2024
[INFO] [stdout]  462 | |         }
[INFO] [stdout]  463 | |         ctx.refresh_statusline().await;
[INFO] [stdout]      | |         ------------------------------
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |         `#9` will be dropped later as of Edition 2024
[INFO] [stdout]  464 | |
[INFO] [stdout]  465 | |         let result = connect_and_run(&mut ws_tx, &mut ws_rx, &mut ctx).await;
[INFO] [stdout]      | |                      -------------------------------------------------------
[INFO] [stdout]      | |                      |
[INFO] [stdout]      | |                      this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      | |                      `#10` will be dropped later as of Edition 2024
[INFO] [stdout]  466 | |         let _ = ws_tx.send(tokio_tungstenite::tungstenite::Message::Close(None)).await;
[INFO] [stdout]      | |                 ----------------------------------------------------------------------
[INFO] [stdout]      | |                 |                                                                |
[INFO] [stdout]      | |                 |                                                                this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      | |                 |                                                                `#13` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                 this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      | |                 `#11` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                 this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      | |                 `#12` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  501 | |                 tokio::time::sleep(backoff).await;
[INFO] [stdout]      | |                 ---------------------------------
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |                 this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      | |                 `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes_mut.rs:1126:1
[INFO] [stdout]      |
[INFO] [stdout] 1126 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes_mut.rs:1126:1
[INFO] [stdout]      |
[INFO] [stdout] 1126 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes_mut.rs:1126:1
[INFO] [stdout]      |
[INFO] [stdout] 1126 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]      |
[INFO] [stdout]  290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `ws_tx` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ws_tx` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lock/bilock.rs:200:1
[INFO] [stdout]      |
[INFO] [stdout]  200 | impl<T> Drop for Inner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ws_rx` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lock/bilock.rs:200:1
[INFO] [stdout]      |
[INFO] [stdout]  200 | impl<T> Drop for Inner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lock/bilock.rs:200:1
[INFO] [stdout]      |
[INFO] [stdout]  200 | impl<T> Drop for Inner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#11` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/command/attach.rs:628:37
[INFO] [stdout]      |
[INFO] [stdout]  627 | ...                   while let Ok(Some(Ok(tokio_tungstenite::tungstenite::Message::Text(text)))) =
[INFO] [stdout]      |                                                                                          ----
[INFO] [stdout]      |                                                                                          |
[INFO] [stdout]      |                                                                                          `text` calls a custom destructor
[INFO] [stdout]      |                                                                                          `text` will be dropped later as of Edition 2024
[INFO] [stdout]  628 | ...                       tokio::time::timeout_at(deadline, ws_rx.next()).await
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                           |                                               |
[INFO] [stdout]      |                           |                                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                           |                                               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                           |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           |                                               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                           `__awaitee` calls a custom destructor
[INFO] [stdout]      |                           `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  639 | ...                   }
[INFO] [stdout]      |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/command/attach_tests.rs:657:44
[INFO] [stdout]      |
[INFO] [stdout]  654 |             match tokio::time::timeout_at(deadline, rx.next()).await {
[INFO] [stdout]      |                   --------------------------------------------------
[INFO] [stdout]      |                   |                                            |
[INFO] [stdout]      |                   |                                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   |                                            `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                   `__awaitee` calls a custom destructor
[INFO] [stdout]      |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  655 |                 Ok(Some(Ok(tokio_tungstenite::tungstenite::Message::Text(text)))) => {
[INFO] [stdout]      |                                                                          ----
[INFO] [stdout]      |                                                                          |
[INFO] [stdout]      |                                                                          `text` calls a custom destructor
[INFO] [stdout]      |                                                                          `text` will be dropped later as of Edition 2024
[INFO] [stdout]  656 |                     if let Ok(msg) = serde_json::from_str::<ServerMessage>(&text) {
[INFO] [stdout]  657 |                         if let Some(val) = pred(msg) {
[INFO] [stdout]      |                                            ^^^^^^^^^
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                            up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  660 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/command/attach_tests.rs:654:19
[INFO] [stdout]      |
[INFO] [stdout]  654 |             match tokio::time::timeout_at(deadline, rx.next()).await {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                   |                                            |
[INFO] [stdout]      |                   |                                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                   |                                            up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                   |                                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   |                                            `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                   `__awaitee` calls a custom destructor
[INFO] [stdout]      |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  655 |                 Ok(Some(Ok(tokio_tungstenite::tungstenite::Message::Text(text)))) => {
[INFO] [stdout]      |                                                                          ----
[INFO] [stdout]      |                                                                          |
[INFO] [stdout]      |                                                                          `text` calls a custom destructor
[INFO] [stdout]      |                                                                          `text` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  663 |                 other => anyhow::bail!("expected matching message, got {other:?}"),
[INFO] [stdout]      |                 -----
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `other` calls a custom destructor
[INFO] [stdout]      |                 `other` will be dropped later as of Edition 2024
[INFO] [stdout]  664 |             }
[INFO] [stdout]  665 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `other` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `other` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/driver/log_watch.rs:95:19
[INFO] [stdout]      |
[INFO] [stdout]   89 | /             tokio::select! {
[INFO] [stdout]   90 | |                 _ = shutdown.cancelled() => break,
[INFO] [stdout]   91 | |                 _ = wake_rx.recv() => {}
[INFO] [stdout]   92 | |                 _ = poll_interval.tick() => {}
[INFO] [stdout]   93 | |             }
[INFO] [stdout]      | |             -
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `futures_init` calls a custom destructor
[INFO] [stdout]      | |             `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_____________`futures` calls a custom destructor
[INFO] [stdout]      |               `futures` will be dropped later as of Edition 2024
[INFO] [stdout]   94 |
[INFO] [stdout]   95 |               match self.read_new_lines() {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]   96 |                   Ok(lines) if !lines.is_empty() => {
[INFO] [stdout]   97 |                       if line_tx.send(lines).await.is_err() {
[INFO] [stdout]      |                          -------------------------
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          `__awaitee` calls a custom destructor
[INFO] [stdout]      |                          `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  103 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/mux_client.rs:92:15
[INFO] [stdout]      |
[INFO] [stdout]   92 |           match register(&client, &base, &config).await {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                 |                                 |
[INFO] [stdout]      |                 |                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                 |                                 up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                 |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                 |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                 up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                 `__awaitee` calls a custom destructor
[INFO] [stdout]      |                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   98 |               Err(e) => {
[INFO] [stdout]      |                   -
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   `e` calls a custom destructor
[INFO] [stdout]      |                   `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  107 | /                 tokio::select! {
[INFO] [stdout]  108 | |                     _ = tokio::time::sleep(delay) => {}
[INFO] [stdout]  109 | |                     _ = shutdown.cancelled() => return,
[INFO] [stdout]  110 | |                 }
[INFO] [stdout]      | |                 -
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |                 `futures_init` calls a custom destructor
[INFO] [stdout]      | |                 `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_________________`futures` calls a custom destructor
[INFO] [stdout]      |                   `futures` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  113 |       }
[INFO] [stdout]      |       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/mux_client.rs:127:23
[INFO] [stdout]      |
[INFO] [stdout]  125 | /         tokio::select! {
[INFO] [stdout]  126 | |             _ = tokio::time::sleep(heartbeat) => {
[INFO] [stdout]  127 | |                 match register(&client, &base, &config).await {
[INFO] [stdout]      | |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      | |                       |                                 |
[INFO] [stdout]      | |                       |                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                       |                                 up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                       |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      | |                       |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                       `__awaitee` calls a custom destructor
[INFO] [stdout]      | |                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  128 | |                     Ok(()) => {
[INFO] [stdout] ...    |
[INFO] [stdout]  134 | |                     Err(e) => {
[INFO] [stdout]      | |                         -
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |                         `e` calls a custom destructor
[INFO] [stdout]      | |                         `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  139 | |             _ = shutdown.cancelled() => break,
[INFO] [stdout]  140 | |         }
[INFO] [stdout]      | |         -
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |         `futures_init` calls a custom destructor
[INFO] [stdout]      | |         `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         `futures` calls a custom destructor
[INFO] [stdout]      | |_________`futures` will be dropped later as of Edition 2024
[INFO] [stdout]      |           now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures_init` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/notify.rs:1041:1
[INFO] [stdout]      |
[INFO] [stdout] 1041 | impl Drop for Notified<'_> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `futures` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]      |
[INFO] [stdout]  731 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/mux_client.rs:144:11
[INFO] [stdout]     |
[INFO] [stdout]  79 |     let client = reqwest::Client::builder()
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `client` calls a custom destructor
[INFO] [stdout]     |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 144 |     match deregister(&client, &base, &config).await { Err(e) => {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |           |                                   |
[INFO] [stdout]     |           |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |           |                                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 149 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.101/src/error.rs:731:1
[INFO] [stdout]     |
[INFO] [stdout] 731 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/mux_client.rs:144:47
[INFO] [stdout]     |
[INFO] [stdout]  79 |     let client = reqwest::Client::builder()
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `client` calls a custom destructor
[INFO] [stdout]     |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 144 |     match deregister(&client, &base, &config).await { Err(e) => {
[INFO] [stdout]     |                                               ^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 149 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/session/groom.rs:220:33
[INFO] [stdout]      |
[INFO] [stdout]  206 |         if store.channels.input_tx.send(InputEvent::Write(Bytes::from(step.bytes))).await.is_err() {
[INFO] [stdout]      |            ------------------------------------------------------------------------------
[INFO] [stdout]      |            |                                                                        |
[INFO] [stdout]      |            |                                                                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |            |                                                                        `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |            `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |            `__awaitee` calls a custom destructor
[INFO] [stdout]      |            `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  210 |             let (drain_tx, drain_rx) = tokio::sync::oneshot::channel();
[INFO] [stdout]      |                                        -------------------------------
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  211 |             let _ = store.channels.input_tx.send(InputEvent::WaitForDrain(drain_tx)).await;
[INFO] [stdout]      |                     ----------------------------------------------------------------------
[INFO] [stdout]      |                     |                                                                |
[INFO] [stdout]      |                     |                                                                this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                     |                                                                `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                     `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                     `#5` will be dropped later as of Edition 2024
[INFO] [stdout]  212 |             let _ = drain_rx.await;
[INFO] [stdout]      |                     --------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                     `#7` will be dropped later as of Edition 2024
[INFO] [stdout]  213 |             tokio::time::sleep(delay).await;
[INFO] [stdout]      |             -------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |             `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  220 |             if let Ok(screen) = store.terminal.screen.try_read() {
[INFO] [stdout]      |                       ------    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |         |
[INFO] [stdout]      |                       |         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                       |         up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       `screen` calls a custom destructor
[INFO] [stdout]      |                       `screen` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  225 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]      |
[INFO] [stdout]  871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]      |
[INFO] [stdout]  871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]      |
[INFO] [stdout]  871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]      |
[INFO] [stdout]  871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:1245:1
[INFO] [stdout]      |
[INFO] [stdout] 1245 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/session/run.rs:103:58
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let (_, mut switch_rx) = mpsc::channel(1);
[INFO] [stdout]     |                 -------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `switch_rx` calls a custom destructor
[INFO] [stdout]     |                 `switch_rx` will be dropped later as of Edition 2024
[INFO] [stdout] 103 |         match self.run(config, input_rx, &mut switch_rx).await? {
[INFO] [stdout]     |                                                          ^^^^^
[INFO] [stdout]     |                                                          |
[INFO] [stdout]     |                                                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 107 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `switch_rx` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:489:1
[INFO] [stdout]     |
[INFO] [stdout] 489 | impl<T, S: Semaphore> Drop for Rx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/session/transition.rs:213:27
[INFO] [stdout]     |
[INFO] [stdout] 213 |     while let Ok(bytes) = rx.try_recv() {
[INFO] [stdout]     |                  -----    ^^^^^^^^^^^^^
[INFO] [stdout]     |                  |        |
[INFO] [stdout]     |                  |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                  |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                  `bytes` calls a custom destructor
[INFO] [stdout]     |                  `bytes` will be dropped later as of Edition 2024
[INFO] [stdout] 214 |         feed_output(store, &bytes).await;
[INFO] [stdout]     |         --------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `__awaitee` calls a custom destructor
[INFO] [stdout]     |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 215 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bytes` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/test_support.rs:449:37
[INFO] [stdout]     |
[INFO] [stdout] 449 |           while let Ok((stream, _)) = uds_listener.accept().await {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                                       |                     |
[INFO] [stdout]     |                                       |                     this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                       |                     up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                       |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                       |                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                       `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 450 |               let svc_future = <_ as tower::Service<_>>::call(&mut make_svc, ());
[INFO] [stdout] 451 | /             tokio::spawn(async move {
[INFO] [stdout] 452 | |                 let Ok(svc) = svc_future.await;
[INFO] [stdout] 453 | |                 let io = hyper_util::rt::TokioIo::new(stream);
[INFO] [stdout] 454 | |                 let hyper_svc = hyper_util::service::TowerToHyperService::new(svc);
[INFO] [stdout] ...   |
[INFO] [stdout] 459 | |                 .await;
[INFO] [stdout] 460 | |             });
[INFO] [stdout]     | |              -
[INFO] [stdout]     | |              |
[INFO] [stdout]     | |______________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 461 |           }
[INFO] [stdout]     |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]     |
[INFO] [stdout] 290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/io/poll_evented.rs:290:1
[INFO] [stdout]     |
[INFO] [stdout] 290 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/task/join.rs:353:1
[INFO] [stdout]     |
[INFO] [stdout] 353 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/http/agent.rs:88:23
[INFO] [stdout]     |
[INFO] [stdout]  62 |       let state = s.driver.agent_state.read().await;
[INFO] [stdout]     |           -----
[INFO] [stdout]     |           |
[INFO] [stdout]     |           `state` calls a custom destructor
[INFO] [stdout]     |           `state` will be dropped later as of Edition 2024
[INFO] [stdout]  63 |       let screen = s.terminal.screen.read().await;
[INFO] [stdout]     |           ------
[INFO] [stdout]     |           |
[INFO] [stdout]     |           `screen` calls a custom destructor
[INFO] [stdout]     |           `screen` will be dropped later as of Edition 2024
[INFO] [stdout]  64 |       let detection = s.driver.detection.read().await;
[INFO] [stdout]     |           ---------
[INFO] [stdout]     |           |
[INFO] [stdout]     |           `detection` calls a custom destructor
[INFO] [stdout]     |           `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  78 |           error_detail: s.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                         ---------------------------
[INFO] [stdout]     |                         |                     |
[INFO] [stdout]     |                         |                     this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                         |                     up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                         up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  79 |           error_category: s
[INFO] [stdout]     |  _________________________-
[INFO] [stdout]  80 | |             .driver
[INFO] [stdout]  81 | |             .error
[INFO] [stdout]  82 | |             .read()
[INFO] [stdout]  83 | |             .await
[INFO] [stdout]     | |              -----
[INFO] [stdout]     | |              |   |
[INFO] [stdout]     | |______________|___this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                |   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  88 |           last_message: s.driver.last_message.read().await.clone(),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                         |                            |
[INFO] [stdout]     |                         |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                         |                            up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  91 |   }
[INFO] [stdout]     |   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `state` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/http/agent.rs:88:52
[INFO] [stdout]     |
[INFO] [stdout]  62 |       let state = s.driver.agent_state.read().await;
[INFO] [stdout]     |           -----
[INFO] [stdout]     |           |
[INFO] [stdout]     |           `state` calls a custom destructor
[INFO] [stdout]     |           `state` will be dropped later as of Edition 2024
[INFO] [stdout]  63 |       let screen = s.terminal.screen.read().await;
[INFO] [stdout]     |           ------
[INFO] [stdout]     |           |
[INFO] [stdout]     |           `screen` calls a custom destructor
[INFO] [stdout]     |           `screen` will be dropped later as of Edition 2024
[INFO] [stdout]  64 |       let detection = s.driver.detection.read().await;
[INFO] [stdout]     |           ---------
[INFO] [stdout]     |           |
[INFO] [stdout]     |           `detection` calls a custom destructor
[INFO] [stdout]     |           `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  78 |           error_detail: s.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                         ---------------------------
[INFO] [stdout]     |                         |                     |
[INFO] [stdout]     |                         |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                         |                     up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                         up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  79 |           error_category: s
[INFO] [stdout]     |  _________________________-
[INFO] [stdout]  80 | |             .driver
[INFO] [stdout]  81 | |             .error
[INFO] [stdout]  82 | |             .read()
[INFO] [stdout]  83 | |             .await
[INFO] [stdout]     | |              -----
[INFO] [stdout]     | |              |   |
[INFO] [stdout]     | |______________|___this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                |   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  88 |           last_message: s.driver.last_message.read().await.clone(),
[INFO] [stdout]     |                                                      ^^^^^
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  91 |   }
[INFO] [stdout]     |   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `state` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/http/agent.rs:83:14
[INFO] [stdout]     |
[INFO] [stdout]  62 |     let state = s.driver.agent_state.read().await;
[INFO] [stdout]     |         -----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `state` calls a custom destructor
[INFO] [stdout]     |         `state` will be dropped later as of Edition 2024
[INFO] [stdout]  63 |     let screen = s.terminal.screen.read().await;
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `screen` calls a custom destructor
[INFO] [stdout]     |         `screen` will be dropped later as of Edition 2024
[INFO] [stdout]  64 |     let detection = s.driver.detection.read().await;
[INFO] [stdout]     |         ---------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `detection` calls a custom destructor
[INFO] [stdout]     |         `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  78 |         error_detail: s.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                       ---------------------------
[INFO] [stdout]     |                       |                     |
[INFO] [stdout]     |                       |                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                       |                     up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  83 |             .await
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |              up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  91 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `state` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/http/agent.rs:78:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |     let state = s.driver.agent_state.read().await;
[INFO] [stdout]     |         -----
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `state` calls a custom destructor
[INFO] [stdout]     |         `state` will be dropped later as of Edition 2024
[INFO] [stdout]  63 |     let screen = s.terminal.screen.read().await;
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `screen` calls a custom destructor
[INFO] [stdout]     |         `screen` will be dropped later as of Edition 2024
[INFO] [stdout]  64 |     let detection = s.driver.detection.read().await;
[INFO] [stdout]     |         ---------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `detection` calls a custom destructor
[INFO] [stdout]     |         `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  78 |         error_detail: s.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  91 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `state` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/src/command/attach_tests.rs:527:19
[INFO] [stdout]      |
[INFO] [stdout]  527 |             match tokio::time::timeout_at(deadline, rx.next()).await {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                   |                                            |
[INFO] [stdout]      |                   |                                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                   |                                            up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                   |                                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   |                                            `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                   `__awaitee` calls a custom destructor
[INFO] [stdout]      |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  528 |                 Ok(Some(Ok(tokio_tungstenite::tungstenite::Message::Text(text)))) => {
[INFO] [stdout]      |                                                                          ----
[INFO] [stdout]      |                                                                          |
[INFO] [stdout]      |                                                                          `text` calls a custom destructor
[INFO] [stdout]      |                                                                          `text` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  558 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]   --> crates/cli/src/driver/claude/resume.rs:72:30
[INFO] [stdout]    |
[INFO] [stdout] 72 |         if let Ok(entries) = std::fs::read_dir(dir) {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]    |                              up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 73 |             for entry in entries.flatten() {
[INFO] [stdout]    |                 -----    -----------------
[INFO] [stdout]    |                 |        |
[INFO] [stdout]    |                 |        `iter` calls a custom destructor
[INFO] [stdout]    |                 |        `iter` will be dropped later as of Edition 2024
[INFO] [stdout]    |                 |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]    |                 |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]    |                 `entry` calls a custom destructor
[INFO] [stdout]    |                 `entry` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 86 |     }
[INFO] [stdout]    |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]    |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout] note: `entry` invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sys/fs/unix.rs:1011:0
[INFO] [stdout]    = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/test_support.rs:298:39
[INFO] [stdout]     |
[INFO] [stdout] 298 |                 while let Some(msg) = input_rx.recv().await {
[INFO] [stdout]     |                                ---    ^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                                |      |               |
[INFO] [stdout]     |                                |      |               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                |      |               up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                |      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                |      |               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                |      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                |      up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                |      `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                |      `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                `msg` calls a custom destructor
[INFO] [stdout]     |                                `msg` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 301 |                             captured_input.lock().push(data);
[INFO] [stdout]     |                             ---------------------
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 307 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]     |
[INFO] [stdout] 871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]     |
[INFO] [stdout] 871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/oneshot.rs:871:1
[INFO] [stdout]     |
[INFO] [stdout] 871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.14/src/mutex.rs:701:1
[INFO] [stdout]     |
[INFO] [stdout] 701 | impl<'a, R: RawMutex + 'a, T: ?Sized + 'a> Drop for MutexGuard<'a, R, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/service.rs:113:23
[INFO] [stdout]     |
[INFO] [stdout] 113 |                 match output_rx.recv().await {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                       |                |
[INFO] [stdout]     |                       |                this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                       |                up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       |                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       |                `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                       up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       `__awaitee` calls a custom destructor
[INFO] [stdout]     |                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 114 |                     Ok(OutputEvent::Raw { data, offset }) => {
[INFO] [stdout]     |                                           ----
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           `data` calls a custom destructor
[INFO] [stdout]     |                                           `data` will be dropped later as of Edition 2024
[INFO] [stdout] 115 |                         let chunk = proto::OutputChunk { data: data.to_vec(), offset };
[INFO] [stdout] 116 |                         if tx.send(Ok(chunk)).await.is_err() {
[INFO] [stdout]     |                            ------------------------
[INFO] [stdout]     |                            |                  |
[INFO] [stdout]     |                            |                  this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                            |                  `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 125 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `data` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/service.rs:143:40
[INFO] [stdout]     |
[INFO] [stdout] 143 |                 match screen_rx.recv().await {
[INFO] [stdout]     |                       -----------------^^^^^
[INFO] [stdout]     |                       |                |
[INFO] [stdout]     |                       |                this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                       |                up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       `__awaitee` calls a custom destructor
[INFO] [stdout]     |                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 144 |                     Ok(_seq) => {
[INFO] [stdout] 145 |                         let s = terminal.screen.read().await;
[INFO] [stdout]     |                                 ----------------------------
[INFO] [stdout]     |                                 |                      |
[INFO] [stdout]     |                                 |                      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                 |                      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 149 |                         if tx.send(Ok(proto_snap)).await.is_err() {
[INFO] [stdout]     |                            -----------------------------
[INFO] [stdout]     |                            |                       |
[INFO] [stdout]     |                            |                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                            |                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                            `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/service.rs:251:27
[INFO] [stdout]     |
[INFO] [stdout]  29 |   #[tonic::async_trait]
[INFO] [stdout]     |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 227 |           let agent = self.state.driver.agent_state.read().await;
[INFO] [stdout]     |               -----
[INFO] [stdout]     |               |
[INFO] [stdout]     |               `agent` calls a custom destructor
[INFO] [stdout]     |               `agent` will be dropped later as of Edition 2024
[INFO] [stdout] 228 |           let screen = self.state.terminal.screen.read().await;
[INFO] [stdout]     |               ------
[INFO] [stdout]     |               |
[INFO] [stdout]     |               `screen` calls a custom destructor
[INFO] [stdout]     |               `screen` will be dropped later as of Edition 2024
[INFO] [stdout] 229 |
[INFO] [stdout] 230 |           let detection = self.state.driver.detection.read().await;
[INFO] [stdout]     |               ---------
[INFO] [stdout]     |               |
[INFO] [stdout]     |               `detection` calls a custom destructor
[INFO] [stdout]     |               `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 242 |               error_detail: self.state.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                             ------------------------------------
[INFO] [stdout]     |                             |                              |
[INFO] [stdout]     |                             |                              this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                             |                              up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                             up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 243 |               error_category: self
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 244 | |                 .state
[INFO] [stdout] 245 | |                 .driver
[INFO] [stdout] 246 | |                 .error
[INFO] [stdout] 247 | |                 .read()
[INFO] [stdout] 248 | |                 .await
[INFO] [stdout]     | |                  -----
[INFO] [stdout]     | |                  |   |
[INFO] [stdout]     | |__________________|___this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                    |   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                    this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                    up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 251 |               last_message: self.state.driver.last_message.read().await.clone(),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                             |                                     |
[INFO] [stdout]     |                             |                                     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                             |                                     up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/service.rs:251:65
[INFO] [stdout]     |
[INFO] [stdout]  29 |   #[tonic::async_trait]
[INFO] [stdout]     |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 227 |           let agent = self.state.driver.agent_state.read().await;
[INFO] [stdout]     |               -----
[INFO] [stdout]     |               |
[INFO] [stdout]     |               `agent` calls a custom destructor
[INFO] [stdout]     |               `agent` will be dropped later as of Edition 2024
[INFO] [stdout] 228 |           let screen = self.state.terminal.screen.read().await;
[INFO] [stdout]     |               ------
[INFO] [stdout]     |               |
[INFO] [stdout]     |               `screen` calls a custom destructor
[INFO] [stdout]     |               `screen` will be dropped later as of Edition 2024
[INFO] [stdout] 229 |
[INFO] [stdout] 230 |           let detection = self.state.driver.detection.read().await;
[INFO] [stdout]     |               ---------
[INFO] [stdout]     |               |
[INFO] [stdout]     |               `detection` calls a custom destructor
[INFO] [stdout]     |               `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 242 |               error_detail: self.state.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                             ------------------------------------
[INFO] [stdout]     |                             |                              |
[INFO] [stdout]     |                             |                              this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                             |                              up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                             up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 243 |               error_category: self
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 244 | |                 .state
[INFO] [stdout] 245 | |                 .driver
[INFO] [stdout] 246 | |                 .error
[INFO] [stdout] 247 | |                 .read()
[INFO] [stdout] 248 | |                 .await
[INFO] [stdout]     | |                  -----
[INFO] [stdout]     | |                  |   |
[INFO] [stdout]     | |__________________|___this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                    |   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                    this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                    up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 251 |               last_message: self.state.driver.last_message.read().await.clone(),
[INFO] [stdout]     |                                                                   ^^^^^
[INFO] [stdout]     |                                                                   |
[INFO] [stdout]     |                                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/service.rs:248:18
[INFO] [stdout]     |
[INFO] [stdout]  29 | #[tonic::async_trait]
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 227 |         let agent = self.state.driver.agent_state.read().await;
[INFO] [stdout]     |             -----
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `agent` calls a custom destructor
[INFO] [stdout]     |             `agent` will be dropped later as of Edition 2024
[INFO] [stdout] 228 |         let screen = self.state.terminal.screen.read().await;
[INFO] [stdout]     |             ------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `screen` calls a custom destructor
[INFO] [stdout]     |             `screen` will be dropped later as of Edition 2024
[INFO] [stdout] 229 |
[INFO] [stdout] 230 |         let detection = self.state.driver.detection.read().await;
[INFO] [stdout]     |             ---------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `detection` calls a custom destructor
[INFO] [stdout]     |             `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 242 |             error_detail: self.state.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                           ------------------------------------
[INFO] [stdout]     |                           |                              |
[INFO] [stdout]     |                           |                              this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                           |                              up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 248 |                 .await
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                  up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/service.rs:242:58
[INFO] [stdout]     |
[INFO] [stdout]  29 | #[tonic::async_trait]
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 227 |         let agent = self.state.driver.agent_state.read().await;
[INFO] [stdout]     |             -----
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `agent` calls a custom destructor
[INFO] [stdout]     |             `agent` will be dropped later as of Edition 2024
[INFO] [stdout] 228 |         let screen = self.state.terminal.screen.read().await;
[INFO] [stdout]     |             ------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `screen` calls a custom destructor
[INFO] [stdout]     |             `screen` will be dropped later as of Edition 2024
[INFO] [stdout] 229 |
[INFO] [stdout] 230 |         let detection = self.state.driver.detection.read().await;
[INFO] [stdout]     |             ---------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `detection` calls a custom destructor
[INFO] [stdout]     |             `detection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 242 |             error_detail: self.state.driver.error.read().await.as_ref().map(|e| e.detail.clone()),
[INFO] [stdout]     |                                                          ^^^^^
[INFO] [stdout]     |                                                          |
[INFO] [stdout]     |                                                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `screen` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `detection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/mod.rs:37:41
[INFO] [stdout]     |
[INFO] [stdout]  35 |             match rx.recv().await {
[INFO] [stdout]     |                   ---------------
[INFO] [stdout]     |                   |         |
[INFO] [stdout]     |                   |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   |         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                   `__awaitee` calls a custom destructor
[INFO] [stdout]     |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  36 |                 Ok(event) => {
[INFO] [stdout]  37 |                     if let Some(item) = map_fn(event) {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                         up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  38 |                         if tx.send(Ok(item)).await.is_err() {
[INFO] [stdout]     |                            -----------------------
[INFO] [stdout]     |                            |                 |
[INFO] [stdout]     |                            |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                            |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  42 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/src/transport/grpc/mod.rs:35:19
[INFO] [stdout]     |
[INFO] [stdout]  35 |             match rx.recv().await {
[INFO] [stdout]     |                   ^^^^^^^^^^-----
[INFO] [stdout]     |                   |         |
[INFO] [stdout]     |                   |         this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                   |         up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   |         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                   up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   `__awaitee` calls a custom destructor
[INFO] [stdout]     |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  38 |                         if tx.send(Ok(item)).await.is_err() {
[INFO] [stdout]     |                            -----------------------
[INFO] [stdout]     |                            |                 |
[INFO] [stdout]     |                            |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                            |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  46 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/mux/tests/http.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/specs/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/cli/src/main.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/cli/tests/log_watch_rotation.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/cli/tests/grpc_integration.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/cli/tests/session_loop.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/cli/tests/large_output.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/cli/tests/tmux_backend.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/cli/tests/pty_edge_cases.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/tests/tmux_backend.rs:79:15
[INFO] [stdout]      |
[INFO] [stdout]   79 |         match tokio::time::timeout(std::time::Duration::from_secs(2), output_rx.recv()).await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                                                                         |
[INFO] [stdout]      |               |                                                                         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               |                                                                         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               |                                                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               |                                                                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               `__awaitee` calls a custom destructor
[INFO] [stdout]      |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]   80 |             Ok(Some(data)) => {
[INFO] [stdout]      |                     ----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `data` calls a custom destructor
[INFO] [stdout]      |                     `data` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   89 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `data` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/tests/pty_edge_cases.rs:31:27
[INFO] [stdout]     |
[INFO] [stdout]  31 |     while let Ok(chunk) = output_rx.try_recv() {
[INFO] [stdout]     |                  -----    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                  |        |
[INFO] [stdout]     |                  |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                  |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                  `chunk` calls a custom destructor
[INFO] [stdout]     |                  `chunk` will be dropped later as of Edition 2024
[INFO] [stdout]  32 |         output.extend_from_slice(&chunk);
[INFO] [stdout]  33 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/cli/tests/docker_e2e.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/tests/pty_edge_cases.rs:76:27
[INFO] [stdout]     |
[INFO] [stdout]  76 |     while let Ok(chunk) = output_rx.try_recv() {
[INFO] [stdout]     |                  -----    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                  |        |
[INFO] [stdout]     |                  |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                  |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                  `chunk` calls a custom destructor
[INFO] [stdout]     |                  `chunk` will be dropped later as of Edition 2024
[INFO] [stdout]  77 |         output.extend_from_slice(&chunk);
[INFO] [stdout]  78 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/tests/pty_edge_cases.rs:200:27
[INFO] [stdout]     |
[INFO] [stdout] 200 |     while let Ok(chunk) = output_rx.try_recv() {
[INFO] [stdout]     |                  -----    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                  |        |
[INFO] [stdout]     |                  |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                  |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                  `chunk` calls a custom destructor
[INFO] [stdout]     |                  `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 201 |         total += chunk.len();
[INFO] [stdout] 202 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/tests/pty_edge_cases.rs:235:27
[INFO] [stdout]     |
[INFO] [stdout] 235 |     while let Ok(chunk) = output_rx.try_recv() {
[INFO] [stdout]     |                  -----    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                  |        |
[INFO] [stdout]     |                  |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                  |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                  `chunk` calls a custom destructor
[INFO] [stdout]     |                  `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 236 |         output.extend_from_slice(&chunk);
[INFO] [stdout] 237 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/cli/tests/ws_integration.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/cli/tests/docker_e2e.rs:169:31
[INFO] [stdout]      |
[INFO] [stdout]  168 |         if let Ok(resp) = client.get(&url).send().await {
[INFO] [stdout]      |                           -----------------------------
[INFO] [stdout]      |                           |                       |
[INFO] [stdout]      |                           |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                           |                       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                           `__awaitee` calls a custom destructor
[INFO] [stdout]      |                           `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  169 |             if let Ok(body) = resp.json::<serde_json::Value>().await {
[INFO] [stdout]      |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                               |                                |
[INFO] [stdout]      |                               |                                this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                               |                                up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               |                                this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                               |                                `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                               up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  176 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]  177 |         tokio::time::sleep(Duration::from_millis(300)).await;
[INFO] [stdout]      |         ----------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |         `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#6` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed crates/cli/tests/ws_integration.rs (2 fixes)
[INFO] [stderr]    Migrating crates/cli/tests/claude_integration.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/cli/tests/pty_backend.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/specs/tests/smoke.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/tests/pty_backend.rs:27:27
[INFO] [stdout]     |
[INFO] [stdout]  27 |     while let Ok(chunk) = output_rx.try_recv() {
[INFO] [stdout]     |                  -----    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                  |        |
[INFO] [stdout]     |                  |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                  |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                  `chunk` calls a custom destructor
[INFO] [stdout]     |                  `chunk` will be dropped later as of Edition 2024
[INFO] [stdout]  28 |         output.extend_from_slice(&chunk);
[INFO] [stdout]  29 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/tests/pty_backend.rs:55:27
[INFO] [stdout]     |
[INFO] [stdout]  55 |     while let Ok(chunk) = output_rx.try_recv() {
[INFO] [stdout]     |                  -----    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                  |        |
[INFO] [stdout]     |                  |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                  |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                  `chunk` calls a custom destructor
[INFO] [stdout]     |                  `chunk` will be dropped later as of Edition 2024
[INFO] [stdout]  56 |         output.extend_from_slice(&chunk);
[INFO] [stdout]  57 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/tests/pty_backend.rs:139:27
[INFO] [stdout]     |
[INFO] [stdout] 139 |     while let Ok(chunk) = output_rx.try_recv() {
[INFO] [stdout]     |                  -----    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                  |        |
[INFO] [stdout]     |                  |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                  |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                  `chunk` calls a custom destructor
[INFO] [stdout]     |                  `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 140 |         screen.feed(&chunk);
[INFO] [stdout] 141 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/cli/tests/pty_backend.rs:159:27
[INFO] [stdout]     |
[INFO] [stdout] 159 |     while let Ok(chunk) = output_rx.try_recv() {
[INFO] [stdout]     |                  -----    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                  |        |
[INFO] [stdout]     |                  |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                  |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                  `chunk` calls a custom destructor
[INFO] [stdout]     |                  `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 160 |         ring.write(&chunk);
[INFO] [stdout] 161 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> tests/specs/tests/smoke.rs:297:19
[INFO] [stdout]      |
[INFO] [stdout]  297 |             match async_nats::connect(&nats_url).await {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                   |                              |
[INFO] [stdout]      |                   |                              this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                   |                              up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                   |                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   |                              `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                   `__awaitee` calls a custom destructor
[INFO] [stdout]      |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  298 |                 Ok(c) => break c,
[INFO] [stdout]  299 |                 Err(_) => tokio::time::sleep(Duration::from_millis(50)).await,
[INFO] [stdout]      |                           ---------------------------------------------------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                           `#2` will be dropped later as of Edition 2024
[INFO] [stdout]  300 |             }
[INFO] [stdout]  301 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/bounded.rs:1920:1
[INFO] [stdout]      |
[INFO] [stdout] 1920 | impl<T> Drop for OwnedPermit<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/watch.rs:1013:1
[INFO] [stdout]      |
[INFO] [stdout] 1013 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/watch.rs:1013:1
[INFO] [stdout]      |
[INFO] [stdout] 1013 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/bounded.rs:1920:1
[INFO] [stdout]      |
[INFO] [stdout] 1920 | impl<T> Drop for OwnedPermit<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/watch.rs:1013:1
[INFO] [stdout]      |
[INFO] [stdout] 1013 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/sync/watch.rs:1013:1
[INFO] [stdout]      |
[INFO] [stdout] 1013 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 44s
[INFO] [stderr] crater-edition-check: coop v1.0.0 (/opt/rustwide/workdir/crates/cli) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: coopmux v1.0.0 (/opt/rustwide/workdir/crates/mux) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: coop-specs v1.0.0 (/opt/rustwide/workdir/tests/specs) updating edition from 2021 to 2024
[INFO] [stderr]    Compiling coop v1.0.0 (/opt/rustwide/workdir/crates/cli)
[INFO] [stderr]     Checking coopmux v1.0.0 (/opt/rustwide/workdir/crates/mux)
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]   --> crates/cli/src/command/attach_tests.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     unsafe { std::env::remove_var("COOP_STATUSLINE_CMD") };
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unsafe-code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]   --> crates/cli/src/command/attach_tests.rs:74:5
[INFO] [stdout]    |
[INFO] [stdout] 74 |     unsafe { std::env::remove_var("COOP_STATUSLINE_INTERVAL") };
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]   --> crates/cli/src/command/attach_tests.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     unsafe { std::env::remove_var("COOP_URL") };
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]   --> crates/cli/src/command/attach_tests.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 78 |     unsafe { std::env::remove_var("COOP_AUTH_TOKEN") };
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]   --> crates/cli/src/command/attach_tests.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     unsafe { std::env::remove_var("COOP_SOCKET") };
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]   --> crates/cli/src/driver/claude/resume_tests.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 |     unsafe { std::env::set_var("CLAUDE_CONFIG_DIR", &config_dir) };
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]   --> crates/cli/src/driver/claude/resume_tests.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     unsafe { std::env::remove_var("CLAUDE_CONFIG_DIR") };
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> crates/cli/src/driver/claude/setup_tests.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     unsafe { std::env::set_var("CLAUDE_CONFIG_DIR", tmp.path()) };
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> crates/cli/src/driver/claude/setup_tests.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     unsafe { std::env::remove_var("CLAUDE_CONFIG_DIR") };
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> crates/cli/src/driver/claude/setup_tests.rs:197:5
[INFO] [stdout]     |
[INFO] [stdout] 197 |     unsafe { std::env::set_var("CLAUDE_CONFIG_DIR", tmp.path()) };
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> crates/cli/src/driver/claude/setup_tests.rs:224:5
[INFO] [stdout]     |
[INFO] [stdout] 224 |     unsafe { std::env::remove_var("CLAUDE_CONFIG_DIR") };
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking coop-specs v1.0.0 (/opt/rustwide/workdir/tests/specs)
[INFO] [stderr] error: could not compile `coop` (lib test) due to 11 previous errors
[INFO] running `Command { std: "docker" "inspect" "775a8771d4dbd4a3a731feb0ed0e426d77b049a55dae08251630b3014e1a13d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "775a8771d4dbd4a3a731feb0ed0e426d77b049a55dae08251630b3014e1a13d6", kill_on_drop: false }`
[INFO] [stdout] 775a8771d4dbd4a3a731feb0ed0e426d77b049a55dae08251630b3014e1a13d6
